Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
41982 陶俊宸 密码锁 C++ 通过 100 9 MS 256 KB 666 2022-06-19 18:34:43

Tests(5/5):


#include<bits/stdc++.h> using namespace std; bool isprime(int x){ for(int i=2;i<=x/i;i++){ if(x%i==0) return 0; } return 1; } int change(int x,int y){ int t=abs(x-y); if(t>5) t=10-t; return t; } int changeTimes(int x,int y){ int i=0,xi[5]={0},yi[5]={0},sum=0; while(x){ xi[i++]=x%10; x/=10; } i=0; while(y){ yi[i++]=y%10; y/=10; } for(int i=0;i<5;i++){ sum+=change(xi[i],yi[i]); } return sum; } int main(){ int x,times=100,num; cin>>x; for(int i=99999;i>=2;i--){ if(isprime(i)){ int t=changeTimes(i,x); if(t<times){ times=t; num=i; } } } printf("%05d",num); return 0; }


测评信息: