uva 12108 Extraordinarily Tired Students (UVA - 12108)
算法完全转载。。。原博客(https://blog.csdn.net/u014800748/article/details/38407087)
题目简单叙述
题目就是一堆学生他们有清醒的时候和昏迷的时候,并且这些都是成为了一个周期,他们还必须当其他昏迷的人大于等于清醒的人的时候才会睡觉要不就再来一个清醒的周期,最初会输入此时存在于周期的哪一个位置。
做法(完全按照原博客)
首先我们寻找一个较大的数我原本寻找的是1e6,最后又发现5e3也行,罚时瞬间从几十ms降到了0.这个数是用来计算总共要模拟的时间。然后每次都是判断当前状态的c[i]是不是已经在清醒阶段,如果是那么清醒人数加1,然后再判断c[i]是不是已经在总周期末尾或者c[i]在清醒周期末尾外加判断人数这里用了 【清醒的人数>=总人数-清醒的人数】?这样的表达来表示是不是清醒的人数多,实在是太厉害了。
我的代码(算法完全借鉴别人我现在18/10/4 11:53 vj这个题fastest第一)
#include <iostream>
using namespace std;
int a[20],b[20],c[20];
main()
{
int w=0;
int n;
while(cin>>n&&n)
{
for(int i=0;i<n;i++)
cin>>a[i]>>b[i]>>c[i];
int an;
for(int i=1;i<=5e3;i++)
{
int q=0;
for(int i=0;i<n;i++)
if(c[i]<=a[i])
q++;
if(q==n)
{
an=i;break;
}
for(int i=0;i<n;i++)
{
if(c[i]==a[i]+b[i]||c[i]==a[i]&&q>=n-q)
c[i]=0;
c[i]++;
}
if(i==5e3)
an=-1;
}printf("Case %d: %d\n",++w,an);
}
}
uva 12108 Extraordinarily Tired Students (UVA - 12108)的更多相关文章
- 【模拟】UVa 12108 - Extraordinarily Tired Students
When a student is too tired, he can't help sleeping in class, even if his favorite teacher is right ...
- Extraordinarily Tired Students UVA - 12108
不知道叫什么,好像是模拟的方法,看懂了题就好办(英语硬伤←_←) 题意大概是当一个同学想睡觉的时候判断周围睡觉的人数,不睡的人数大于等于睡觉的话就死撑着,否则就睡觉. 一开始没有什么思路,就直接用了个 ...
- UVA 12108 Extraordinarily Tired Students
思路: ①用结构体stu,属性有清醒时间,睡眠时间,开始处于的时间,状态(醒着还是睡着), 还有计数器. ②二维数组存表格. ③在确定接下来要进入的状态之后,就一次把表格里持续状态的数据都修改掉,比如 ...
- [刷题]算法竞赛入门经典(第2版) 4-8/UVa12108 - Extraordinarily Tired Students
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 代码:(Accepted,0 ms) //UVa12108 - Extraordinarily Tired Stude ...
- 【习题 4-8 UVA - 12108】Extraordinarily Tired Students
[链接] 我是链接,点我呀:) [题意] [题解] 一个单位时间.一个单位时间地模拟就好. 然后对于每个人. 记录它所处的周期下标idx 每个单位时间都会让每个人的idx++ 注意从醒着到睡着的分界线 ...
- 贪心水题。UVA 11636 Hello World,LA 3602 DNA Consensus String,UVA 10970 Big Chocolate,UVA 10340 All in All,UVA 11039 Building Designing
UVA 11636 Hello World 二的幂答案就是二进制长度减1,不是二的幂答案就是是二进制长度. #include<cstdio> int main() { ; ){ ; ) r ...
- 通过vjudge刷Uva的题目(解决Uva网站打开慢的问题)
最近在跟着算法竞赛入门经典刷题,发现Uva网站打开超级慢,进个主页面都需要好几秒.后来发现可以通过vjudge网站刷Uva的题目,很是方便,在这mark一下,顺便做一下推荐. vjudge网址:htt ...
- uva 524(Prime Ring Problem UVA - 524 )
dfs练习题,我素数打表的时候j=i了,一直没发现实际上是j=i*i,以后可记住了.还有最后一行不能有空格...昏迷了半天 我的代码(紫书上的算法) #include <bits/stdc++. ...
- uva 133(The Dole Queue UVA - 133)
一道比较难想的模拟题,用了队列等东西,发现还是挺难做的,索性直接看了刘汝佳的代码,发现还是刘汝佳厉害! 代码本身难度并不是很大,主要还是p=(p+n+d-1)%n+1;这一句有些难度,实际上经过自己的 ...
随机推荐
- HDOJ 4705 Y 树形DP
DP:求出3点构成链的方案数 .然后总方案数减去它 Y Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K ...
- 'IOKING' TCP Transmission Server Engine ('云猴'©TCP通讯server引擎)(预告版)
关键词: IOKING IOCP TCP Transmission Server Engine Lock Free Interlocked 云猴完毕portTCP通讯server引擎 无锁 原子锁( ...
- UVA 1476 - Error Curves(三分法)
UVA 1476 1476 - Error Curves 题目链接 题意:给几条下凹二次函数曲线.然后问[0,1000]全部位置中,每一个位置的值为曲线中最大值的值,问全部位置的最小值是多少 思路:三 ...
- 关于DOM操作的相关案例
1.模态框案例 需求: 打开网页时有一个普通的按钮,点击当前按钮显示一个背景图,中心并弹出一个弹出框,点击X的时候会关闭当前的模态框 代码如下: <!DOCTYPE html> <h ...
- [转]linux之磁盘配额(quota)
转自:http://www.jb51.net/LINUXjishu/78446.html 磁盘配额(quota)比较常用的几个情况是: * 针对WWW server,例如:每个人的网页空间的容量限制 ...
- Kibana里No Marvel Data Found问题解决(图文详解)
问题详情 http://192.168.80.145:5601/app/marvel#/no-data?_g=(refreshInterval:(display:'10%20seconds',paus ...
- java_基础知识_字符串练习题_计算两个字符串的最长公共字串长度
package tek; Java算法——求出两个字符串的最长公共字符串 /** * @Title: 问题:有两个字符串str1和str2,求出两个字符串中最长公共字符串. * @author 匹夫( ...
- P2639 [USACO09OCT]Bessie的体重问题Bessie's We…
题目描述 Bessie像她的诸多姊妹一样,因为从Farmer John的草地吃了太多美味的草而长出了太多的赘肉.所以FJ将她置于一个及其严格的节食计划之中.她每天不能吃多过H (5 <= H & ...
- CSS基础知识(定位、浮动)
12.浮动 特点:将当前元素脱离文档流 float: left 即左浮动 float: right 即右浮动 注:*父与子元素,设置子元素浮动不能超出父元素的范围 *多个元素均设置为浮动时,将 ...
- 【年终糖果计划】跟风领一波糖果 candy.one 领取教程
糖果领取网址(较为稳定):https://candy.one/i/1474564 用微信和QQ打开的朋友请复制到其他浏览器打开 糖果领取网址(较为稳定):https://candy.one/i/147 ...