Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
41228 王籽易 密码锁 C++ 解答错误 0 11 MS 1036 KB 1003 2022-06-11 15:19:31

Tests(0/5):


#include <bits/stdc++.h> using namespace std; int a[6],a2[6],n,m=0,ans2[99999],ans3[99999]; bool check(int i){ for(int j=2;j<=i/j;j++){ if(i%j==0){ return 1; } } return 0; } int f2(int n,int m){ int ans1=0,ans2=0; while(n!=m){ n++; if(n==10){ n=0; } ans1++; } while(n!=m){ n--; if(n==-1){ n=9; } ans2++; } return min(ans1,ans2); } int f(int a[],int b[]){ int sum=0; for(int i=1;i<=5;i++){ sum+=f2(a[i],b[i]); } return sum; } int main(){ for(int i=1;i<=5;i++){ cin>>a2[i]; } for(int i=99999;i>=1;i--){ if(check(i)){ a[1]=i/10000; a[2]=i/1000%10; a[3]=i/100%10; a[4]=i/10%10; a[5]=i%10; int sum=f(a2,a); ans3[i]=i; ans2[i]=sum; } } int minn=ans2[99999],ij; for(int i=99999;i>=1;i--){ if(ans2[i]!=0) minn=min(minn,ans2[i]),ij=i; } a[1]=ij/10000; a[2]=ij/1000%10; a[3]=ij/100%10; a[4]=ij/10%10; a[5]=ij%10; cout<<a[1]<<a[2]<<a[3]<<a[4]<<a[5]; }


测评信息: