codeforces #325
来源:互联网 发布:佐治亚州知乎 编辑:程序博客网 时间:2024/05/23 16:25
Codeforces Round #325 题解
打得太烂。。本以为过了三题结果第三题FST,wa12了,还没改好,先写AB两水的吧
P.S. 事实上是想试试markdown编辑的感觉,这篇暂时没什么营养的题解是用markdown编辑的
A:Alena’s Schedule
题意:一个人去学校上课,每天的课程安排表示为一串0与1的数字,1代表这个时候有课,0代表没课,主人公保证在每天的第一节课的时候到校(不迟到但也不提前到),而他又很注意休息,每当他上完一节课后,如果他接下来有连续两节课以上的时间没有课,那么他就回家休息,如果只有一节课的空闲或者没有空闲就继续呆在学校。如果发现全天的课已经全部上完,就立刻回家。 给出课程安排,计算全天的在校时间。
不难处理,我们只需要遍历这个数串(规模很小。。)对每一个“1”,看它后两位,如果是“01”,对应不回家休息的情况,就把那个0抹成1就行
这样处理完之后,再统计改写后的数串有多少个1就行了
然而有一个问题不容忽视,在这种处理下,最后一个数位可能只有一个0,而被处理为继续留在学校,而实际情况是直接回家,所以为了补救,我们在最后一位之后再添加一个0
code:
#include<iostream>#include<cstdio>#include<cmath>#include<cstring>#include<string>#include<stack>#include<queue>#include<algorithm>#include<cstdlib>#define maxn 201314#define inf 0x3f3f3f3f#define LL long longusing namespace std;int a[110];int n;int main(){ cin>>n; for(int i=0;i<n;i++) { cin>>a[i]; } a[n]=0; int ans=0; for(int i=0;i<n-1;i++) { if(a[i]==1) { if((!a[i+1])&&(a[i+2])) a[i+1]=1; } } for(int i=0;i<n;i++) { if(a[i])ans++; } cout<<ans<<endl;}
B:Laurenty and Shop
题意:一个小镇的格局是:两排房屋,每排n个。现在主人公想从第一排的第一个走到第二排的最后一个。同一排所有相邻房屋之间的过路时间给出,两排之间相同位置的房屋之间的过路时间给出,求两条不相同的尽量短路径。
路径是有要求的,由于主人公一定会从第一排穿到第二排,题目要求单程只能穿马路一次,这意味着路径是个最简单的折线形。
乍一看还以为是搜索或者dp,吓一跳。。仔细一看,路径只有n种,把他们都找出来排序(规模很小,直接快排),输出最短的那两个即可。
找路径的方法不难写,感觉这段写的挺好的,维护第一排道路的前缀和,第二排的后缀和
#include<iostream>#include<cstdio>#include<cmath>#include<cstring>#include<string>#include<stack>#include<queue>#include<algorithm>#include<cstdlib>#define maxn 201314#define inf 0x3f3f3f3f#define LL long longusing namespace std;int a[55];int b[55];int c[55];int pa[55],pb[55];int q[55];int n;int main(){ cin>>n; pa[0]=0; for(int i=1;i<=n-1;i++) { cin>>a[i]; pa[i]=pa[i-1]+a[i]; } for(int i=1;i<=n-1;i++) { cin>>b[i]; } pb[n+1]=0; for(int i=n;i>=1;i--) { pb[i]=pb[i+1]+b[i]; } for(int i=0;i<n;i++) { cin>>c[i]; q[i]=pa[i]+c[i]+pb[i+1]; } sort(q,q+n); int ans=q[0]+q[1]; cout<<ans<<endl;}
- codeforces #325
- Codeforces Round #325
- codeforces~~~
- Codeforces
- codeforces
- Codeforces
- codeforces
- codeforces
- Codeforces
- Codeforces
- CodeForces
- CodeForces
- CodeForces
- CodeForces
- CodeForces
- Codeforces
- Codeforces
- Codeforces
- Hibernate 数据的批量插入、更新和删除
- Unity3D的两个坑
- virtualenv 隔离gjango开发环境
- web图表库百度开源:ECharts
- Ubuntu下使用Vi时方向键变乱码 退格键不能使用的解决方法
- codeforces #325
- 结构化程序设计和面向对象程序设计的特点及优缺点
- 数据结构基础3_带头结点的单链表
- 黑马程序员———I/O流
- POJ 1384 Piggy-Bank (完全背包)
- 自定义有序广播并接受信息
- [每日一答] [20151013] MySQL中的GROUP_CONCAT()函数详解
- 关于百度地图只显示中间部分,显示不全的原因
- C#生成Code39条形码而非条形码字体的方法