ACM集训日记-8月5日
来源:互联网 发布:淘宝客 traceid 编辑:程序博客网 时间:2024/05/23 12:25
今天又是只出了两道题(烦),算了算,接下来每天还要出三道题才能在最后一天完成···加把劲吧
今天的第一道题是点击打开链接,一开始我还没有意识到这是一个怎么样地题目,以为每个频道字母:后面的字母只要不一样channel就加一,然后这道题第一次wa就轻易地送了出去,然后上网搜了搜资料,发现这种题目是一种类似于涂色的问题(参考博客点击打开链接又学到了新知识~),相邻的颜色不同最多只用花4种颜色,相应的,这道题就是一个模子,最多只用花4种频道,就能满足条件
int judge(int x,int channel)//判断在x处使用频道channel是否满足条件{ for(int i=0;i<n;i++) { if(maps[x][i])//用maps来存储 { if(cha[i]&&cha[i]==channel)return 0; } } return 1;}int dfs(int num,int chan) //判断从第num个点开始,到最后一个点只用chan个频道,正确返回1,否则返回0{ if(num>n)return 1; for(int i=num-1;i<n;i++) { if(!vis[i]) { vis[i]=1; for(int j=1;j<=chan;j++) { if(judge(i,j)) { cha[i]=j; if(dfs(num+1,chan))return 1; } } vis[i]=0; } } return 0;}今天第二道题点击打开链接,这道题难了我好久,一开始我看到求最少步数,想也没想就广搜了,但是由于地图是会变化的,然后就做不下去了,只好用深搜先弄出所有情况,再将最少步数比较出来,有点比较坑的地方就是输入唱和宽的时候是和行列反着来的,强迫症以前做习惯了先输入行再输入列的习惯,一开始还有点没转过弯来···
虽然跟那些排名靠前的相比,我还是太菜了,每天一小点进步,也是进步嘛,加油。
阅读全文
0 0
- ACM集训日记-8月5日
- ACM集训日记-8月8日
- ACM集训日记-8月1日
- ACM集训日记-8月2日
- ACM集训日记-8月3日
- ACM集训日记-8月4日
- ACM集训日记-8月7日
- ACM集训日记-8月9日
- ACM集训日记-8月10日
- ACM集训日记-8月11日
- ACM集训日记-8月12日
- ACM集训日记-8月14日
- ACM集训日记-8月15日
- ACM集训日记-8月16日
- ACM集训日记-8月17日
- ACM集训日记-8月18日
- ACM集训日记-8月19日
- ACM集训日记-8月21日
- javascript的词法作用域
- Golang Web 框架 Beego controller 运行机制
- MongoDB聚合
- Golang Web 框架 Beego model 逻辑
- bzoj 2938(AC自动机+拓扑排序)
- ACM集训日记-8月5日
- 最简单的二叉树
- 博客测试
- SPOJ
- js中 this与that
- Golang Web 框架 Beego view 渲染
- [LeetCode] 557. Reverse Words in a String III
- 最大子段求和
- 如何实现一键安装服务?