2020牛客暑假多校集训第八场(补题)

I – Interesting Computer Game
题目大意:
• 给了两个数组a与b。
• 第i步可以从a和b中选择一个数。
• 求最后选出的数中,不同的数要最多。
思路:我开始用map来模拟a与b数字的选择,但答案总是错误,实际上应该把不同的数当成图中的点。二元数组a,b当成是一条边,最后构成图,如果转化成图之后有的地方形成了环的话,说明其中的点多次出现,每个都可以取到,对于没有构成环的部分,可能有个点只出现过一次。(利用并查集来解)

#include<iostream>
#include<map>
using namespace std;
const int maxn=1e5+10,maxe=2e5+10;
map<int,int> mp;
int a[maxn],b[maxn];
bool vis[maxe];
int f[maxe],n;

int findfather(int x){
    if(x!=f[x])  f[x]=findfather(f[x]);
    return f[x];
}
void bin()
{
int x,y;
     for(int i=1;i<=n;i++){
            x=findfather(mp[a[i]]),y=findfather(mp[b[i]]);
            if(x!=y){
                f[x]=y;
                if(vis[x]||vis[y])  vis[y]=1,vis[x]=1;
            }
            else  vis[y]=1;
        }
}
int main(){
    int T;
    cin>>T;
    for(int k=1;k<=T;k++){
        int num=1;
       cin>>n;
        for(int i=1;i<=n;i++){
            cin>>a[i]>>b[i];
            if(!mp[a[i]])  mp[a[i]]=num++;
            if(!mp[b[i]])  mp[b[i]]=num++;
        }
        for(int i=1;i<=num;i++)  f[i]=i,vis[i]=0;
        bin();
        int ans=num-1;
        for(int i=1;i<num;i++){
            if(f[i]==i&&vis[i]==0)   ans--;
        }
         cout<<"Case #"<<k<<": "<<ans<<endl;
       mp.clear();
    }
}

I – Interesting Computer Game
题意:
• 有n种菜,每种菜的数量为bi, 每个菜的盈利为 ai。
• 每个顾客必须从第1种菜开始,连续地吃,每种吃一个。
• 保证顾客最多的情况下,盈利最大。
思路:
由题意可以,顾客最多的数量就是b1,而且将b数组处理,后面每一位都比前面的数小,之后就可以比较数组a的前缀和,取出最大的数,因为b数组处理后每一位都比前面的数小,我们从后往前枚举前缀和。因为long long会超出,使用long double。

#include<iostream>
using namespace std;
const int maxn=2e5+10;
typedef long long ll;
int t,n,a[maxn],b[maxn];
long double c[maxn];
int main(){
    cin>>t;
    for(int k=1;k<=t;k++){
        cin>>n;
        for(int i=1;i<=n;i++){
            cin>>a[i];
            c[i]=c[i-1]+a[i];
        }
        ll u=c[1];
        a[1]=1;
        for(int i=2;i<=n;i++){
            if(c[i]<=u)    a[i]=0;
            else{
                a[i]=1;
                u=c[i];
            }
        }
        b[0]=1e5+10;
        for(int i=1;i<=n;i++){
           cin>>b[i];
            b[i]=min(b[i-1],b[i]);
        }
        int l=0;
        long double ans=0;
        for(int i=n;i>=1;i--)
            if(a[i]!=0){
                ans+=c[i]*(b[i]-l);
                l=b[i];
            }
       printf("Case #%d: %d %.0Lf\n",k,b[1],ans);

    }
}
全部评论

相关推荐

刚刷到字节跳动官方发的消息,确实被这波阵仗吓了一跳。在大家还在纠结今年行情是不是又“寒冬”的时候,字节直接甩出了史上规模最大的转正实习计划——ByteIntern。咱们直接看几个最硬的数,别被花里胡哨的宣传词绕晕了。首先是“量大”。全球招7000多人是什么概念?这几乎是把很多中型互联网公司的总人数都给招进来了。最关键的是,这次的资源分配非常精准:研发岗给了4800多个Offer,占比直接超过六成。说白了,字节今年还是要死磕技术,尤其是产品和AI领域,这对于咱们写代码的同学来说,绝对是今年最厚的一块肥肉。其次是大家最关心的“转正率”。官方直接白纸黑字写了:整体转正率超过50%。这意味着只要你进去了,不划水、正常干,每两个人里就有一个能直接拿校招Offer。对于2027届(2026年9月到2027年8月毕业)的同学来说,这不仅是实习,这简直就是通往大厂的快捷通道。不过,我也得泼盆冷水。坑位多,不代表门槛低。字节的实习面试出了名的爱考算法和工程实操,尤其是今年重点倾斜AI方向,如果你简历里有和AI相关的项目,优势还是有的。而且,转正率50%也意味着剩下那50%的人是陪跑的,进去之后的考核压力肯定不小。一句话总结:&nbsp;27届的兄弟们,别犹豫了。今年字节这是铁了心要抢提前批的人才,现在投递就是占坑。与其等到明年秋招去千军万马挤独木桥,不如现在进去先占个工位,把转正名额攥在手里。
喵_coding:别逗了 50%转正率 仔细想想 就是转正与不转正
字节7000实习来了,你...
点赞 评论 收藏
分享
压力很大,面试官全程高压,问的问题不难,但是没有任何反馈,很慌张,也无算法。实习问了20分钟,一直问我你们做的有什么用,总时长一小时1.学校都有什么课程2.spring的ioc原理以及优点3.除了解耦还知道什么?4.springboot与spring区别,二者的源码看过没?Tomcat了解嘛?有没有具体看过5.spring的bean,面试官一直在重复一个思想问我懂不懂,完全没听过6.mybatis是干什么的?ibatis用过没?平常怎么写SQL?完全不写嘛?7.设计一个分布式双十一秒杀系统(前端,网关,缓存,数据库防超卖全设计)8.怎么做限流9.缓存与数据库一致性,你做异步要用户等你嘛?10.负载均衡怎么做11.多数据中心还是单数据中心,如果出现没卖完怎么做(到这完全不会了,面试官直接说换个话题吧)12.平常读书吗?13.上过哲学课嘛?14.兴趣爱好有没有15.对ai的看法16.来深圳有问题嘛?17.为什么不考研18.上大学带给了你什么?你提升在哪里,有没有具体的例子?反问:1.现在手机都有应用市场,应用宝怎么盈利?除了手机应用市场还是有人用,现在在做跨端,微软都有合作,之后会进军mac,主要做游戏,腾讯本身就是游戏大户。2.面试表现?整体评价一下会给到反馈。面完直接变HR面,今天HR面后,已经转为录用评估了,来牛客许个愿,暑期现在还没什么面试,希望能拿个offer之后再考虑要不要留在手子吧。
nunuking:三面压力这么大吗,面试的会议约了多长时间呀
面试问题记录
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
正在热议
更多
# AI面会问哪些问题? #
24273次浏览 477人参与
# 中国电信笔试 #
30906次浏览 283人参与
# 开放七大实习专项,百度暑期实习值得冲吗 #
13974次浏览 208人参与
# 你的实习产出是真实的还是包装的? #
18515次浏览 329人参与
# 如果秋招能重来,我会____ #
96446次浏览 499人参与
# 春招至今,你的战绩如何? #
59119次浏览 535人参与
# 米连集团26产品管培生项目 #
12905次浏览 285人参与
# i人适合做什么工作 #
36645次浏览 123人参与
# 我是面试官,请用一句话让我破防 #
79291次浏览 219人参与
# 哪些公司真双非友好? #
69118次浏览 287人参与
# 找AI工作可以去哪些公司? #
7456次浏览 177人参与
# 从事AI岗需要掌握哪些技术栈? #
7444次浏览 234人参与
# 五一之后,实习真的很难找吗? #
102790次浏览 584人参与
# 投递几十家公司,到现在0offer,大家都一样吗 #
339699次浏览 2163人参与
# 你做过最难的笔试是哪家公司 #
29459次浏览 179人参与
# 你小时候最想从事什么职业 #
159824次浏览 2072人参与
# 阿里笔试 #
175926次浏览 1299人参与
# 金三银四,你的春招进行到哪个阶段了? #
21389次浏览 274人参与
# 一张图晒出你司的标语 #
3777次浏览 71人参与
# 面试被问期望薪资时该如何回答 #
382422次浏览 2163人参与
# 晶盛机电求职进展汇总 #
35209次浏览 318人参与
# 应届生第一份工资要多少合适 #
20439次浏览 84人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务