这次csp是100+100+100+20+20的操作,第一题不说了,第二题感觉是数据水了?,它的c到了2e5,n也有1e5他的第四题和第五题全部暴力,两个嵌套之后没有竟然没有ETL!!!出题人数据善良了,第三题我是留在最后写的,写了快俩小时,一直if else,嵌套了六个,提交的时候觉得没啥希望了结果100!!!我震了个大惊,一会附上代码供大家恶心一下(实在是太长了,但并不复杂就是不停的复制粘贴),我设了三个数组分别是jisuan[N],keyong[N],yingyong[N];,jisuan[N]表示计算节点i里包括的应用编号,keyong[N]表示可用区i包括的计算节点,yingyong[N]表示应用编号i包括的计算节点,还需注意的是应用编号达到了1e9,开数组不好开,所以把它映射了。第四题和第五题就是纯暴力,第四题写的自己强迫症都犯了,全是最麻烦的搜索但又无力更改,第五题就写了一种情况小 z 先手且为偶数的时候,这种情况就是小z每次合并最中间的两堆,小c扔两边的石子。

最后的最后祝dby~后天的csp考试中拿到高分上400~~~(梦想还是要有的,万一实现了呢),求求csp爱我一次吧~~~

代码如下:

#include <bits/stdc++.h>using namespace std;#define ll long longconst int N=1e5+10;
int flag[N];
int n,k,ans;
int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);cin>>n>>k;flag[0]=1;while(k--){int x,y;cin>>x>>y;if(!flag[y])ans++;flag[x]=1;}cout<<ans;return 0;
}

出行计划

#include <bits/stdc++.h>using namespace std;const int N=4e5+10;int t[N],c[N],b[N];
int n,m,k,q;
int main()
{cin>>n>>m>>k;for(int i=1;i<=n;i++) cin>>t[i]>>c[i];for(int i=1;i<=n;i++){for(int j=max(0,t[i]-c[i])+1;j<=t[i];j++) b[j]++;}while(m--){cin>>q;cout<<b[q+k]<<endl;}return 0;
}

计算资源调度器

#include <bits/stdc++.h>using namespace std;
const int N=4e3+10;
unordered_map<int,int>mp;vector<int>jisuan[N],keyong[N],yingyong[N];
vector<int>shai;
int id[N];
int n,m,cnt,f,a,na,pa,paa,paar;bool cmp(int a1,int a2)
{if(jisuan[a1].size()==jisuan[a2].size())return a1<a2;return jisuan[a1].size()<jisuan[a2].size();
}
void func1(vector<int> ans)
{if(ans.size()==0)cout<<0<<" ";else{sort(ans.begin(),ans.end(),cmp);cout<<ans[0]<<" ";int idd=mp[a];yingyong[idd].push_back(ans[0]);jisuan[ans[0]].push_back(idd);}
}void func()
{shai.clear();int tem[n+1]={0};int flag=0;if(na)//否则表示要运行在编号为na的可用区内的计算节点上;{for(int i=0;i<keyong[na].size();i++){tem[keyong[na][i]]=1;}if(pa)//必须和编号为 pa的应用的计算任务在同一个可用区运行;{int idd=mp[pa];for(int i=0;i<yingyong[idd].size();i++){if(id[yingyong[idd][i]]==na){flag=1;break;}}if(!flag){func1(shai);return;}if(paa)//不能和编号为paa的应用的计算任务在同一个计算节点上运行;{int idd1=mp[paa];for(int i=0;i<yingyong[idd1].size();i++){if(tem[yingyong[idd1][i]])tem[yingyong[idd1][i]]=-1;}for(int i=1;i<=n;i++){if(tem[i]==1)shai.push_back(i);}if(shai.size()){func1(shai);}else{if(paar)//必须满足{func1(shai);}else{for(int i=1;i<=n;i++){if(tem[i])shai.push_back(i);}func1(shai);}}}else{for(int i=1;i<=n;i++){if(tem[i]==1)shai.push_back(i);}func1(shai);}}else//必须和编号为 pa的应用的计算任务在同一个可用区运行;{if(paa)//不能和编号为paa的应用的计算任务在同一个计算节点上运行;{int idd1=mp[paa];for(int i=0;i<yingyong[idd1].size();i++){if(tem[yingyong[idd1][i]]) tem[yingyong[idd1][i]]=-1;}for(int i=1;i<=n;i++){if(tem[i]==1)shai.push_back(i);}if(shai.size()){func1(shai);}else{if(paar)//必须满足{func1(shai);}else{for(int i=1;i<=n;i++){if(tem[i])shai.push_back(i);}func1(shai);}}}else{for(int i=1;i<=n;i++){if(tem[i]==1)shai.push_back(i);}func1(shai);}}}else//否则表示要运行在编号为na的可用区内的计算节点上;{if(pa){int idd=mp[pa];int temm1[m+1]={0};for(int i=0;i<yingyong[idd].size();i++){temm1[id[yingyong[idd][i]]]=1;}for(int i=1;i<=m;i++){if(!temm1[i])continue;for(int j=0;j<keyong[i].size();j++)tem[keyong[i][j]]=1;}if(paa){int idd1=mp[paa];for(int i=0;i<yingyong[idd1].size();i++){if(tem[yingyong[idd1][i]])tem[yingyong[idd1][i]]=-1;}for(int i=1;i<=n;i++){if(tem[i]==1)shai.push_back(i);}if(shai.size()){func1(shai);}else{if(paar)//必须满足{func1(shai);}else{for(int i=1;i<=n;i++){if(tem[i])shai.push_back(i);}func1(shai);}}}else{for(int i=1;i<=n;i++){if(tem[i]==1)shai.push_back(i);}func1(shai);}}else{for(int i=1;i<=n;i++)tem[i]=1;if(paa){int idd1=mp[paa];for(int i=0;i<yingyong[idd1].size();i++){if(tem[yingyong[idd1][i]])tem[yingyong[idd1][i]]=-1;}for(int i=1;i<=n;i++){if(tem[i]==1)shai.push_back(i);}if(shai.size()){func1(shai);}else{if(paar)//必须满足{func1(shai);}else{for(int i=1;i<=n;i++){if(tem[i])shai.push_back(i);}func1(shai);}}}else{for(int i=1;i<=n;i++){if(tem[i]==1)shai.push_back(i);}func1(shai);}}}
}
void funcc()
{if(!mp[a])mp[a]=++cnt;while(f--) func();cout<<endl;
}
int main()
{cin>>n>>m;for(int i=1;i<=n;i++){int li;cin>>li;keyong[li].push_back(i);id[i]=li;}int g;cin>>g;while(g--){cin>>f>>a>>na>>pa>>paa>>paar;funcc();}return 0;
}

通信系统管理

#include <bits/stdc++.h>using namespace std;
typedef pair<int,int>PII;
const int N=1e5+10;
struct node{int v,y;long long x;
};
long long tongxun[N];
queue<node>q[N];
int n,m,k,l,pp,qq;int check(int time,int u)
{queue<node>tem;int id=0;long long maxx=-1;long long d[n+1]={0};while(q[u].size()){node te=q[u].front();q[u].pop();if(te.y<time)continue;d[te.v]+=te.x;tem.push(te);if(d[te.v]>maxx)maxx=d[te.v],id=te.v;else if(d[te.v]==maxx&&id>te.v)id=te.v;}while(tem.size()){node te=tem.front();tem.pop();q[u].push(te);}tongxun[u]=id;return id;
}
void checkp(int time)
{int ans=0;queue<node>tem;for(int i=1;i<=n;i++){if(!q[i].size()){ans++;continue;}while(q[i].size()){node te=q[i].front();q[i].pop();if(te.y<time)continue;tem.push(te);}if(!tem.size())ans++;while(tem.size()){node te=tem.front();tem.pop();q[i].push(te);}}cout<<ans<<endl;
}void checkq(int time)
{int ans=0;int d[N];for(int i=1;i<=n;i++){if(tongxun[i])d[i]=tongxun[i];else d[i]=check(time,i);}for(int i=1;i<=n;i++){int temm=d[i];if(d[temm]==i) ans++;}cout<<ans/2<<endl;
}
int main()
{cin>>n>>m;for(int i=1;i<=m;i++){memset(tongxun,0,sizeof tongxun);cin>>k;while(k--){int u,v,x,y;cin>>u>>v>>x>>y;q[u].push({v,i+y-1,x});q[v].push({u,i+y-1,x});}cin>>l;while(l--){int li;cin>>li;cout<<check(i,li)<<endl;}cin>>pp>>qq;if(pp)checkp(i);if(qq)checkq(i);}return 0;
}

博弈论与石子合并

#include <iostream>using namespace std;
const int N=1e5+10;
int n,k;
int a[N],s[N];
int main()
{cin>>n>>k;for(int i=1;i<=n;i++){cin>>a[i];s[i]=s[i-1]+a[i];}int minn=1e9;for(int i=1;i<=n/2;i++){int r=i+n/2;minn=min(minn,s[r]-s[i-1]);}cout<<minn;return 0;
}

ccf-csp202203相关推荐

  1. CCF CSP 201609-2 火车购票

    题目链接:http://118.190.20.162/view.page?gpid=T46 问题描述 请实现一个铁路购票系统的简单座位分配算法,来处理一节车厢的座位分配. 假设一节车厢有20排.每一排 ...

  2. ccf Markdown

    说实话,这种题如果给我返回结果我是一定可以写出来的但是ccf不返回结果很烦,这种题我根本不能一次写对.还有重写时发现好多考试之前根本没注意到的点比如删掉空行 .......=_= #include&l ...

  3. I'm stuck! ccf模拟题。

    ccf模拟题. I'm stuck! 时间限制: 1.0s 内存限制: 256.0MB 问题描述 给定一个R行C列的地图,地图的每一个方格可能是'#', '+', '-', '|', '.', 'S' ...

  4. 计算机协会成立活动简报,“中国计算机学会CCF走进高校”活动在我校举行

    校新闻中心讯 9月13日下午,由中国计算机学会(CCF)主办的"CCF走进河南科技大学"活动在工科二号楼610举行.副校长魏世忠教授出席活动并致辞.长江学者.国家杰出青年基金获得者 ...

  5. 绿盟科技与CCF成立“鲲鹏”科研基金 计划发力5大领域资助16个项目

    [51CTO.com原创稿件]2017年5月10日,由中国计算机学会(CCF)和北京神州绿盟信息安全科技股份有限公司(以下简称:绿盟科技)主办的2017 CCF-绿盟科技"鲲鹏"科 ...

  6. WC2018 CCF程序设计教学比赛记事

    WC2018   d5 教师比赛日  亦或者称之为以"递归"为主题的同课异构课程(25节课 有8节讲递归) 发现强省或者弱省中名校派出的选手还是非常优秀的,这种优秀,从他的教态.自 ...

  7. 徐韬:CCF - 个贷违约预测Baseline

    徐韬是华北电力大学数理系大四的学生,Datawhale成员/Dreamtech成员,参加了多期Datawhale的组队学习,也在天池/CCF/讯飞等比赛中取得了不错的成绩,现保送大连理工大学软件学院深 ...

  8. 赴约北大,2019 CCF大数据与计算智能大赛正式启动

    8月17日,以"数据驱动,智创未来"为主题的2019 CCF大数据与计算智能大赛(2019 CCF BDCI)全球启动仪式,在北京大学英杰交流中心·阳光厅正式启幕.自2013年创办 ...

  9. CCF推荐系统项目代码解读!

    Datawhale干货 作者:阿水,北京航空航天大学,Datawhale成员 本文以CCF大数据与计算智能大赛(CCF BDCI)图书推荐系统竞赛为实践背景,使用Paddle构建用户与图书的打分模型, ...

  10. 相机居然能存储气味,未来智能家居会是什么样? | CCF C³

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 晓查 发自 凹非寺  量子位 报道 | 公众号 QbitAI 智能音 ...

最新文章

  1. 面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)...
  2. 总统先生,一路走好!
  3. [SuperM]Shell编程课堂笔记+PPT总结
  4. 腾讯招.NET5,居然要求精通MySQL,而不是SQLServer!
  5. 连续锁定2个不同的锁会死锁_研究死锁–第5部分:使用显式锁定
  6. Linux—系统启动类故障之 GRUB引导故障
  7. 7种方式,教你提升 SpringBoot 项目的吞吐量
  8. mysql choose when_可以使用choose,一个when 和 otherwise 来实现if-else判断_学小易找答案...
  9. linux 五笔输入法下载软件,极点五笔Linux版|极点五笔输入法官方linux版_最火软件站...
  10. 增量式解析大型XML文件
  11. 邮件服务器的功能以及相关工作原理
  12. python好学吗要有什么基础-Python好学吗难不难?0基础能学会吗?
  13. Vue3.0实现原生高度可自定义菜单组件vue3-menus
  14. 天池新人赛之新浪微博互动预测
  15. php写类,php 类的写法
  16. 黑马mysql百度云盘_黑马-百度云搜索引擎
  17. python中slice用法
  18. 全国邮政编码规律,及正则表达式
  19. 【Android -- 软技能】《软技能:代码之外的生存指南》之好书推荐(一)
  20. Java递归查询子节点集合

热门文章

  1. 苹果mac休眠快捷键_强烈推荐 10 款免费的Mac 软件!(附下载地址)
  2. MATLAB实现圆内随机撒点
  3. 状态码(Status Codes)
  4. UVA 1633-Dyslexic Gollum 状态压缩DP
  5. 2023西南大学907考研,西南大学计算机考研情况
  6. android 最简单的饼状图
  7. PHPCMS二次开发教程
  8. 入职字节外包一个月,我还是选择了离职!
  9. C语言如何编程换算小时秒,c语言编写 输入一个以秒为单位的时间值,将其转化成“时:分:秒”的形式输出,将转换操作定义成函式...
  10. 删除除了id号不同,其他都相同的学生冗余信息