HELP! 求助
查看原帖
HELP! 求助
767155
a_small_penguin楼主2024/3/3 10:51

题目链接

代码:

#include <bits/stdc++.h>

using namespace std;
const int N = 250;

int n, K, sum, ans;
int a[N], b[N], c[N];

void dfs(int u) {
  if (u == ans) {
    for (int i = 0; i < ans; i++) {
      c[sum] = c[sum] * 10 + b[i];
    }
    sum++;
    return;
  }
  for (int i = 1; i <= K; i++) {
    if (u != 0 || a[i] != 0) {
      b[u] = a[i];
      dfs(u + 1);
    }
  }
}
int main() {
  cin >> n >> K;

  for (int i = 1; i <= K; i++) {
    cin >> a[i];
  }
  if(K == 1)
  {
      cout << a[1];
      return 0;
  }
  if(K == 10)
  {
      cout << (n-1)%10;
      return 0;
  }
  ans = 1;

  while (sum < n) {
    dfs(0);
    ans++;
    cout << endl;
  }

  sort(c, c + sum);
  cout << c[n - 1] % 10;
}
2024/3/3 10:51
加载中...