topcoder SRM 625 DIV2 AddMultiply

由于题目告诉肯定至少存在一种解,

故只需要根据条件遍历一下,

    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;
    }

 

posted @ 2014-06-19 21:11  OpenSoucre  阅读(143)  评论(0编辑  收藏  举报