CF60第二题..

    技术2022-05-19  22

    昨天晚上太困了...竟然没有写出来..刚才几分钟,果断A掉...

    贴代码...

     

    #include <stdio.h> #include <stdlib.h> int cmp(int a,int b) { if (a==b) return 1; char aa[4];char bb[4]; for (int i=3;i>=0;i--) { aa[i] = a; a/=10; bb[i] = b; b/=10; } int count = 0; for (int i=0;i<4;i++) if (aa[i] == bb[i]) count++; if (count>=3) return 1; return 0; } int main(void) { int n; char str[1005][5]; int num[1005]; scanf("%d",&n); for (int i=0;i<n;i++) { scanf("%s",str[i]); num[i] = atoi(str[i]); } if(str[0][0] != '1') str[0][0] = '1'; else for (int i=1;i<4;i++) if(str[0][i] != '0') {str[0][i]='0';break;} num[0]= atoi(str[0]); int tmp = num[0]; int count = 0; for (int i=1;i<n;i++) { for(;tmp<2012;tmp++) if (cmp(tmp,num[i])) { count++; break; } num[i] = tmp; } if(count==n-1) for (int i=0;i<n;i++) printf("%d/n",num[i]); else printf("No solution/n"); return 0; }


    最新回复(0)