2017-07-17:考试
来源:互联网 发布:光盘数据恢复软件 编辑:程序博客网 时间:2024/06/03 09:29
第一题:很简单的DP:找按1807顺序出现的子序列
举例:找怎么加入一个0,max这个0之前以0结尾的最长子序列和这个0之前以8结尾的最长子序列
for (int i=0;i<len;i++){ if (c[i]=='1') f[0]++; if (c[i]=='8' && f[0]!=0) f[1]=max(f[1],f[0])+1; if (c[i]=='0' && f[1]!=0) f[2]=max(f[1],f[2])+1; if (c[i]=='7' && f[2]!=0) f[3]=max(f[2],f[3])+1; }
第二题:
思想:建立超级点,单向从超级点向黑点连边,再加上原有的边形成图后跑SPFA,
最后用于更新最短路的边是到超级点所必过的边,可用于构建答案,
有可能有多条边满足,为了避免加重,建立并查集,若一条边两端点得的father一致则不加此边。
错误原因:
1.跑SPFA是双向边,edge[N*2]开两倍大小,数组开小了
2.用fill的时候fill(dis,dis+n+1,IFN)
适当将fill末尾开长一点
阅读全文
0 0
- 2017-07-17:考试
- 2017-07-15:考试
- 2017-9-17考试总结
- 2017-09-07考试情况总结
- 2017-9-17 PAT考试记
- 07年下半年考试
- 2017.8.17考试
- 考试总结17
- 考试
- 考试!
- 考试
- 考试
- 考试
- 考试
- 考试
- 考试
- 考试
- 考试
- webpack编译多页面vue项目的配置问题
- js格式化json/xml格式
- 复杂链表的复制【每日一题】
- 学习贴 量化小白成长记---基础学习篇
- 获取Mat元素的方法使用M.at(i,j)
- 2017-07-17:考试
- InfluxDB系列学习教程目录
- java 观察者模式
- 用java实现银行家算法
- react-native-elements/ListItem bug
- 图像拼接实现
- MFC学习笔记之对话框
- Ubuntu12.04下载Android系统源代码
- shell 命令行操作