Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- using namespace std;
- bool prohibit(int res, const vector<int>& x){
- bool b = false;
- for (int j = 0; j < x.size() and not b; ++j){
- if (res%x[j] == 0){
- b = true;
- }
- }
- return b;
- }
- void bck(int n, int res, const vector<int>& x, int pos){
- if(pos == n){
- cout << res << endl;
- }
- else if (pos == 0){
- for (int i = 1; i < 10; ++i){
- res = i;
- if (not prohibit(res,x)) bck(n,res,x,pos+1);
- }
- }
- else {
- for (int i = 0; i < 10; ++i){
- int aux = res*10+i;
- if (not prohibit(aux,x)) bck(n,aux,x,pos+1);
- }
- }
- }
- int main(){
- int n,m;
- while (cin >> n and cin >> m){
- vector<int> x(m);
- for(int i = 0; i < x.size(); ++i){
- cin >> x[i];
- }
- bck(n,0,x,0);
- cout << "----------" << endl;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement