topcoder SRM 625 DIV2 AddMultiply

OpenSoucre發表於2014-06-19

由於題目告訴肯定至少存在一種解,

故只需要根據條件遍歷一下,

    vector <int> makeExpression(int y) {
        vector<int> res;
        for(int i = -1000; i <=1000; ++ i){
            for(int j = -1000; j <= 1000; ++ j){
                if(i!=0 && i!=1 && j!=0&& j!=1 ){
                    int k = y-i*j;
                    if(k>=-1000 && k<=1000 && k!=0 && k!=1){
                        res.push_back(i);
                        res.push_back(j);
                        res.push_back(k);
                        return res;
                    }
                }
            }
        }
        return res;
    }

 

相關文章