Submission #815686


Source Code Expand

#include <string>
#include <iostream>
#include <cstdlib>
#include <vector>
#include <unordered_set>
#include <algorithm>

bool find (std::vector<int> const & v, int val) {
  auto it = std::find(v.begin(), v.end(), val);
  return it != v.end();
}

int main () {
  std::cin.tie(0);
  std::ios::sync_with_stdio(false);

  std::string line;
  std::getline(std::cin, line);

  char * p;
  int N = std::strtol(line.data(), &p, 10);
  int K = std::strtol(p, NULL, 10);

  std::vector<int> D(10);
  for (int i = 0; i < 10; ++i) { D[i] = i; }

  std::getline(std::cin, line);
  p = &*line.begin();
  for (int i = 0; i < K; ++i) {
    int d = std::strtol(p, &p, 10);
    D[d] = 100;
  }
  std::sort(D.begin(), D.end());

  for (int i = 0; i < K; ++i) {
    if (D[i] == 100) {
      D.resize(i + 1);
      break;
    }
  }

  int min = D[0];
  int min2 = D[1];

  std::vector<int> x;
  while (N > 0) {
    x.push_back(N % 10);
    N = N / 10;
  }

  if (!find(D, x.back())) {
    if (min != 0) {
      x.back() = min;
      x.push_back(min);
    } else {
      x.back() = min2;
    }
  } else {
    int i = x.size() - 2;
    for (; i >= 0; --i) {
      if (!find(D, x[i])) {
        break;
      }
    }
    for (int j = 0; j <= i; ++j) {
      x[j] = min;
    }
  }

  for (int i = x.size() - 1; i >= 0; --i) {
    std::cout << x[i];
  }
  std::cout << std::endl;
}

Submission Info

Submission Time
Task C - Iroha's Obsession
User toufu12345
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1428 Byte
Status WA
Exec Time 4 ms
Memory 256 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 300
Status AC
AC × 7
WA × 3
Set Name Test Cases
Sample
All subtask0_sample_01.txt, subtask0_sample_02.txt, subtask1_X_01.txt, subtask1_X_02.txt, subtask1_X_03.txt, subtask1_X_04.txt, subtask1_X_05.txt, subtask1_X_06.txt, subtask1_X_07.txt, subtask1_X_08.txt
Case Name Status Exec Time Memory
subtask0_sample_01.txt AC 4 ms 256 KiB
subtask0_sample_02.txt AC 4 ms 256 KiB
subtask1_X_01.txt AC 4 ms 256 KiB
subtask1_X_02.txt WA 4 ms 256 KiB
subtask1_X_03.txt AC 4 ms 256 KiB
subtask1_X_04.txt AC 4 ms 256 KiB
subtask1_X_05.txt AC 4 ms 256 KiB
subtask1_X_06.txt WA 4 ms 256 KiB
subtask1_X_07.txt WA 4 ms 256 KiB
subtask1_X_08.txt AC 4 ms 256 KiB