#include<cstdio> #include<set> #include<vector> #define maksi 1000000000 using namespace std; set<int> ilo; vector<int> fib; vector<bool> odp; int main(){ int a1=1;//zmienne do generacji int a2=1; int w=0,pom; //int i=0; //int maksi; fib.push_back(1); while(w<maksi){//generacja fibbonaciego w=a1+a2; a1=a2; a2=w; //i++; fib.push_back(w); ilo.insert(1); //printf("%d\n",w); } for(int i=0;i<fib.size();i++){//generacja iloczynu for(int j=i;j<fib.size();j++){ long long przetwor=(long long)fib[i]*fib[j]; if(przetwor<=maksi)ilo.insert(przetwor); else break; } } ilo.insert(0); int t;//generacja odpowiedzi scanf("%d",&t); for(int i=0;i<t;i++){ int czy; scanf("%d",&czy); if(ilo.find(czy)!=ilo.end())odp.push_back(true); else odp.push_back(false); } for(int i=0;i<odp.size();i++){ if(odp[i])printf("TAK\n"); else printf("NIE\n"); } //for(set<int> ::iterator iter = ilo.begin();iter!=ilo.end();++iter){printf("%d ",*iter);} //printf("%d ",ilo.size()); //for(vector<int> ::iterator iter = fib.begin();iter!=fib.end();++iter){printf("%d ",*iter);} //printf("%d\n",i); return 0; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | #include<cstdio> #include<set> #include<vector> #define maksi 1000000000 using namespace std; set<int> ilo; vector<int> fib; vector<bool> odp; int main(){ int a1=1;//zmienne do generacji int a2=1; int w=0,pom; //int i=0; //int maksi; fib.push_back(1); while(w<maksi){//generacja fibbonaciego w=a1+a2; a1=a2; a2=w; //i++; fib.push_back(w); ilo.insert(1); //printf("%d\n",w); } for(int i=0;i<fib.size();i++){//generacja iloczynu for(int j=i;j<fib.size();j++){ long long przetwor=(long long)fib[i]*fib[j]; if(przetwor<=maksi)ilo.insert(przetwor); else break; } } ilo.insert(0); int t;//generacja odpowiedzi scanf("%d",&t); for(int i=0;i<t;i++){ int czy; scanf("%d",&czy); if(ilo.find(czy)!=ilo.end())odp.push_back(true); else odp.push_back(false); } for(int i=0;i<odp.size();i++){ if(odp[i])printf("TAK\n"); else printf("NIE\n"); } //for(set<int> ::iterator iter = ilo.begin();iter!=ilo.end();++iter){printf("%d ",*iter);} //printf("%d ",ilo.size()); //for(vector<int> ::iterator iter = fib.begin();iter!=fib.end();++iter){printf("%d ",*iter);} //printf("%d\n",i); return 0; } |