2 条题解

  • 1
    @ 2025-1-18 14:23:02

    #include <stdio.h> #include <math.h> int main() { int n, a, k; scanf("%d %d %d", &n, &a, &k); int limit = pow(10, n); for(int b = 0; b < limit; b++){ int tempa = a, tempb = b; int count = 0; for (int i = 1; i <= n; i++) { int x = tempa % 10, y = tempb % 10; tempa /= 10; tempb /= 10; if (abs(x - y) == 1 || abs(x - y) == 9){ count++; } else if (x != y) { count = -1; break; } } if ((count != -1) && (count <= k)) { printf("%d\n", b); } } return 0; }

    • 0
      @ 2024-11-16 11:41:08

      #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <math.h> int main() { int n, a, k; scanf("%d %d %d", &n, &a, &k); int limit = pow(10, n); for (int b = 0; b < limit; b++)//全部输出一遍 { int tempa = a, tempb = b;//防止ab变化 int count = 0; for (int i = 1; i <= n; i++)//i之前循环次数的作用 { int x = tempa % 10, y = tempb % 10; tempa /= 10; tempb /= 10; if (abs(x - y) == 1 || abs(x - y) == 9)//绝对值,直接压过前导0的压力 { count++;//合理利用变量 } else if (x != y) { count = -1; break; } } if ((count != -1) && (count <= k)) { printf("%d\n", b); } } return 0; }

      • 1

      信息

      ID
      1014
      时间
      1000ms
      内存
      128MiB
      难度
      6
      标签
      递交数
      30
      已通过
      12
      上传者