ykmakuのブログ

競技プログラミングをがんばるブログ

ABC 042 C - こだわり者いろはちゃん / Iroha's Obsession

  • 問題

C - こだわり者いろはちゃん / Iroha's Obsession

  • 解法

条件から必ず解は存在し、N<10000なので解は5桁以下の数字となることが分かる。
したがってNから99999までの数字を順番に条件を満たすかどうかを調べる。

  • 感想

この時期の300点問題に比べると最近の300点は難しくないすか!!??

#include <iostream>
#include <string>
#include <algorithm>
#include <cstdio>
#include <vector>
#include <set>
#include <numeric>
#include <cmath>

using namespace std;

int main()
{
	int n,k;
	cin >> n >> k;
	vector<int> d(k);
	for(int i = 0; i < k; i++){
		cin >> d[i];
	}

	for(int x = n; x < 100000; x++){
		int tmp = x;
		set<int> s;
		while(tmp!=0){
			s.insert(tmp%10);
			tmp /= 10;
		}
		bool flag = true;
		
		for(int i = 0; i < k; i++){
			if(s.count(d[i])) flag = false;
		}
		if(flag){
			cout << x << endl;
			break;
		}
	}


	return 0;
}