Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
42576 | 邢逸轩 | 密码锁 | C++ | 通过 | 100 | 9 MS | 256 KB | 702 | 2022-07-04 08:57:02 |
#include<bits/stdc++.h> using namespace std; int a,timE=1000,ans; int zhi(int a){ if(a==1||a==0) return 0; for(int i=2;i<=a/i;i++){ if(!(a%i)) return 0; } return 1; } int change(int a,int b){ int t=abs(a-b); if(t>5) t=10-t; return t; } int changetimes(int a,int b){ int ai[5]={0},bi[5]={0},ans=0; int i=0; while(a){ ai[i]=a%10; a/=10; i++; } i=0; while(b){ bi[i]=b%10; b/=10; i++; } for(int j=0;j<5;j++){ ans+=change(ai[j],bi[j]); } return ans; } int main(){ cin>>a; for(int i=99999;i>=2;i--){ if(zhi(i)){ if(changetimes(a,i)<timE) timE=changetimes(a,i),ans=i; } } printf("%05d",ans); return 0; }