HDU 1337 The Drunk Jailer--(模拟题找规律)
来源:互联网 发布:初中语文教学软件 编辑:程序博客网 时间:2024/04/29 13:26
题意:有n个监狱,共n轮,第 i 轮警察会去编号为 i 的倍数的监狱,如果是锁的就开锁,如果是开的就锁上,求n轮过后有多少犯人会逃出来
分析:这题实际上是个模拟题,因为数据很小我直接用两重循环模拟的,如果数据很大的话,就不能直接模拟了,模拟题卡时间多半是找规律。
这题的规律是:如果一个监狱被查看了偶数次的话相当于则什么都没发生,还是锁的,也就是说找没有锁上的监狱只要n以内找因数为奇数个的数有多少个即可,也就是找n以内有多少个方数(为什么?怎么找?sqrt(n)向下取整就是答案)
代码:
#include<iostream>using namespace std;int t,n;int a[200];int main(){ cin>>t; while(t--){ cin>>n; memset(a,0,sizeof(a)); for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++) if(j%i==0){ if(a[j]) a[j]=0; else a[j]=1; } } int tot=0; for(int i=1;i<=n;i++) if(a[i]) tot++; cout<<tot<<endl; }}
0 0
- HDU 1337 The Drunk Jailer--(模拟题找规律)
- hdu 1337 The Drunk Jailer(规律)
- hdu 1337 The Drunk Jailer
- poj 1218&&hdu 1337 The Drunk Jailer【简单模拟】
- HDU 1337 || ZOJ 1350 The Drunk Jailer
- HDOJ 1337 The Drunk Jailer(水题)
- POJ 1218 THE DRUNK JAILER 数论规律
- ZOJ 1350/POJ 1218/HDU 1337 The Drunk Jailer
- POJ 1218 THE DRUNK JAILER(水题)
- POJ 1218 THE DRUNK JAILER(数论)
- THE DRUNK JAILER POJ1218
- pku_1218 THE DRUNK JAILER
- The Drunk Jailer
- poj1218 THE DRUNK JAILER!
- POJ1218 THE DRUNK JAILER
- POJ - THE DRUNK JAILER
- POJ1218:THE DRUNK JAILER
- hdu1337-The Drunk Jailer
- android 点击 textview 显示和隐藏 的切换
- iptables 应用层过滤
- 为什么要用--YDX-新型钢木龙骨?
- 分布式系统设计理念
- DM8148官网
- HDU 1337 The Drunk Jailer--(模拟题找规律)
- Java NIO系列教程(八) SocketChannel
- linux中五个常用查找命令
- 第十章,PopupWindow简易demo(Android)
- 欢迎使用CSDN-markdown编辑器
- .net调用PHP的WSDL出现XML错误
- 遍歷Object
- storm教程
- C的存储类,链接与内存管理(Storage Class, Linkage, Memory Management)