测试点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;
}

 

posted on 2022-01-17 10:18  千咲  阅读(193)  评论(0)    收藏  举报