HDU -- 5600 N bulbs 【思维 + 规律】
来源:互联网 发布:linux的shutdown命令 编辑:程序博客网 时间:2024/06/08 02:45
传送门
//题意: 给定n个灯的状态, 1表示开,0 表示关. 一个小孩从第一个灯走到最后一个灯, 走时和一选择相邻的任何一方走. 走过当前这个灯时, 这个灯的状态想相反状态变化. 问是否可以让小孩从最后一个灯离开时, 所有的灯都是关着的
//思路: 这道题也没什么好方法, 只有多写几个样例出来研究研究, 可以发现, 灯总数的奇偶和1(或0)的奇偶有关.
其实也好发现, 当有5个灯时, 2个灯开着, 可以发现无论这2个灯在何处, 怎样走, 都是有一个灯亮着, 那么就可以知道知道在多一个(或者少一个)亮着的灯, 那么就可以把所有的灯都关掉. 其实首先应该知道就是相邻一对的0或1都是没有用的, 总可以关完所有的灯并离开,那么剩下的就是01间隔, 此时不断的举例(我是通过的4,5)也就可以发现这个结论了. 所以当灯的总数的奇偶和亮着(关着的灯相反)的灯奇偶一致时就是YES, 否则就是NO.
AC Code
/** @Cain*/void solve(){ int n; scanf("%d",&n); int cnt = 0; for(int i=1;i<=n;i++){ scanf("%d",&a[i]); cnt+=a[i]; } if(n%2 == cnt%2) puts("YES"); else puts("NO");}
阅读全文
0 0
- HDU -- 5600 N bulbs 【思维 + 规律】
- HDU -- 5601 N*M bulbs 【思维 + 规律】
- hdu 5600 N bulbs
- HDU 5600:N bulbs
- hdu 5600 N bulbs
- HDU 5600 N bulbs
- hdu 5600 N bulbs(BC——思维题)
- hdu 5601 N*M bulbs(规律)
- hdu 5601 N*M bulbs 找规律
- HDU-5601 N*M bulbs(推导||规律)
- hdoj N bulbs 5600 (规律)
- hdu 5601 N*M bulbs(找规律)
- HDU 5600 N bulbs(机智)
- BestCoder Round #67-N bulbs(规律)
- hdoj N*M bulbs 5601 (规律)
- HDOJ 5600 N bulbs
- HDU 5601:N*M bulbs
- hdu 5601 N*M bulbs
- AngularJS 学习笔记(2)
- Codeforces Round #431 (Div. 2)B Tell Your World
- RX操作符之对Observable发射的数据执行变换操作一(map、flatmap)
- 哪些股票值得持有10年?
- init函数详解
- HDU -- 5600 N bulbs 【思维 + 规律】
- NYOJ 66 分数拆分
- iOS开发人员使用TestFlight构建测试版本
- java的锁机制
- Java双链表的实现
- urlretrieve下载的问题
- web显示实时时间动态刷新
- C++学习笔记——类的初探
- 1 rocketMQ producer,consumer基本特征