题解 | #称砝码#

称砝码

http://www.nowcoder.com/practice/f9a4c19050fc477e9e27eb75f3bfd49c

暴力解法,set去重,一会儿去看看大佬们的思路

#include<bits/stdc++.h>

using namespace std;

int main(){
    
    int n;
    while(cin>>n){
        vector<int> m;
        vector<int> x;
        int a,b;
        for(int i=0;i<n;++i){
            cin>>a; m.push_back(a);
        }
        for(int i=0;i<n;++i){
            cin>>b; x.push_back(b);
        }
        set<int> s;
        s.insert(0);
        for(int i=0;i<n;i++){
            for(int j=0;j<x[i];++j){
                set<int> tmps;
                for(auto it=s.begin();it!=s.end();++it)
                {
                    tmps.insert(*it+m[i]);
                }
                for(auto it=tmps.begin();it!=tmps.end();++it)
                    s.insert(*it);
            }
        }
        cout<<s.size()<<endl;
    }
    return 0;
}


全部评论

相关推荐

02-25 16:55
已编辑
北京工业大学 Java
211本,找日常实习的话,如果面向中厂的话,需要刷hot100么?因为之前从来没刷过,算法仅限于学校课程水平,准备3月投递简历,现在还需要背八股文,时间有些紧张,还需要刷算法题么?同时什么样的公司可以算是中厂呢?
程序员小白条:中大厂说的上名字的,必定要算法,hot100只是最基础的了,题库远不止100题捏,一般在300-400题量之间,算法=学校课程=简单题也做不出,多准备八股文和算法吧,其他项目可以放放,精刷算法就行了,花时间成长很快的
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务