Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
41840 老师 密码锁 C++ 编译错误 0 0 MS 0 KB 646 2022-06-18 16:08:33

Tests(0/0):


#include<bits/stdc++.h> using namespace std; int isPrime(int n){ if(n==0 || n==1) return 0; for(int i=1;i<=n/i;i++){ if(n%i==0) 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[6]={0},bi[6]={0},ak=0,bk=0,ans=0; while(a) ai[++ak]=a%10,a/=10; while(b) bi[++bk]=b%10,b/=10; for(int i=1;i<=5;i++) ans+=change(a[i],b[i]); return ans; } int main(){ int n,mink=100,minn; cin>>n; for(int i=99997;i>=2;i--){ if(isPrime(i)){ int t=changeTimes(n,i); if(t<mink) mink=t,minn=i; } } printf("%05d",minn); return 0; }


测评信息: