测试点1:仔细看题目后发现是输入数整除四个正因数的和,除不是除以。
#include <iostream> #include <vector> using namespace std; int main(){ int num, data; cin >> num; for(int i = 0; i < num; i++){ cin >> data; vector<int> zys; for(int j = 1; j <= data; j++) if(data % j == 0) zys.push_back(j); if(zys.size() < 4) cout << "No" << endl; else{ int a,b,c,d,r; bool flag = false; for(a = 0; a < zys.size() - 3 && !flag; a++) for(b = a+1; b < zys.size() - 2 && !flag; b++) for(c = b+1; c < zys.size() - 1 && !flag; c++) for(d = c+1; d < zys.size() && !flag; d++){ r = zys[a]+zys[b]+zys[c]+zys[d]; if(r % data == 0){ cout << "Yes" << endl; flag = true; } } if(!flag) cout << "No" << endl; } } return 0; }
浙公网安备 33010602011771号