Submission #817441
Source Code Expand
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
#include <cmath>
#define pb push_back
#define rep(i,n) for(int i = 0; i < n ; i++)
static const int INF = (1<<21);
using namespace std;
template
<
typename TYPE,
std::size_t SIZE
>
std::size_t array_length(const TYPE (&array)[SIZE])
{
return SIZE;
}
int facctorialMethod(int k) {//kの階乗関数
int sum = 1;for (int i = 1; i <= k; ++i){sum *= i;}
return sum;}
int combination(int n, int k){ //nCkの関数
int result = facctorialMethod(n) / (facctorialMethod(n - k) * facctorialMethod (k));
return result;}
/*
int LIS(int A[],int n){
int len=0; int* p;
vector<int> L;
L.pb(A[0]);
rep(i,n){
p = lower_bound(L.begin(),L.end(),A[i+1])
if (p == L.end())
}
}
*/
//配列を逆転させる
void reverse(int array[], int length)
{
int i, j;
int temp;
for( i = 0, j = length - 1; i < j; i++, j-- )
{
temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
// 各桁を配列要素に分解 配列を返す
void slice_digit(int num, int result[]){
int mod = 0;int i = 0;
int digit = (int)log10(num) + 1;
// int result[(int)log10((double)num) + 1];
while( num >= 1){
mod = num % 10;
num /= 10;
result[i++] = mod;
}
reverse(result,digit);
}
int main(void){
int N;int k;
bool flag = true;bool flag2 = false;
cin >> N >> k;
//string Nstring = to_string(N);
int D[k];int judge[10];
int digit = (int)log10(N) + 1; int memorize;
int resultmain[5];
rep(i,10){
judge[i] = 0;
}
rep(i,k){
cin >> D[i];
judge[D[i]] = 1;
}
slice_digit(N,resultmain);
for(int i = 0; i < digit; i ++){
flag = true;
memorize = resultmain[i];
while(flag){
if(flag2){
resultmain[i] = 0;
flag2 = false;
}
if(judge[resultmain[i]] == 1){
resultmain[i] += 1;
}else{
flag = false;
}
}
if(memorize != resultmain[i]){
flag2 = true;
}
}
rep(i,digit){
cout << resultmain[i];
}
cout << endl;
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | C - Iroha's Obsession |
| User | imitation0813 |
| Language | C++14 (GCC 5.4.1) |
| Score | 0 |
| Code Size | 2246 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 |
|
| 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 | WA | 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 | AC | 4 ms | 256 KiB |
| subtask1_X_08.txt | AC | 4 ms | 256 KiB |