Extraordinarily Tired Students UVA - 12108
不知道叫什么,好像是模拟的方法,看懂了题就好办(英语硬伤←_←)
题意大概是当一个同学想睡觉的时候判断周围睡觉的人数,不睡的人数大于等于睡觉的话就死撑着,否则就睡觉。
一开始没有什么思路,就直接用了个结构体,主要是把每个人醒着与睡着合在一个字符串中,中途出了点事过几天再来把上次的错误改了后,ac是ac了,但是2141的代码量还是吓到了O__O "…
虽说不推荐看,但还是留在这当做纪念吧http://paste.ubuntu.com/23809285/
后来觉得没必要用结构体,就直接用数组,写完后把测试代码删了代码量也有1451,ok,继续做纪念(*^__^*) 嘻嘻……http://paste.ubuntu.com/23809301/
后来没想到别的思路,就看了vj上一个六百代码量的代码,他的变量名我觉得不太可取,不过对于末尾数据处理挺不错,思路应该都差不多,就是少了睡觉和醒着合在一起的步骤,而是直接把状态与数字比较,恩,挺好的。
写完后第一次没a,改完后代码九百多O__O "…(真是的,不就是变量名比他长了那么一点吗。。。)
最后一次代码如下,没有很复杂,就不写注释了
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
int sleep[12] = {0}, awake[12] = {0}, first[12] = {0};
int main()
{
int t;
int order = 0;
while(scanf("%d", &t) && t)
{
order++;
for(int i = 1; i <= t; i++)
scanf("%d%d%d", &awake[i], &sleep[i], &first[i]);
int time = 1;
for(; ;time++)
{
int num_awake = 0;
for(int i = 1; i <= t; i++)
if(first[i] <= awake[i])num_awake++;
if(num_awake == t)break;
for(int i = 1; i<= t; i++)
{
if(first[i] == awake[i] + sleep[i]) first[i] = 1;
else if(first[i] == awake[i] && num_awake >= t - num_awake) first[i] = 1;
else first[i]++;
}
if(time > 1000)break;
}
if(time > 999)printf("Case %d: -1\n", order);
else printf("Case %d: %d\n", order, time);
}
return 0;
}
做题反思:没有计时,中间隔了好几天,不过很清楚写的确实很慢,这是老毛病了,字数第四章写的都有点阴影,所以ac的时候还是蛮激动的,一开始自己写的代码每一次都会有点小错误,而且是不该犯的错误,恩,细节要注意,否则要为此花费很长的时间,要清楚自己到底在写什么。ok,到此为止,虽说是一道水题,但毕竟是自己的第一篇博客,就啰嗦了一点,嘿嘿......
Extraordinarily Tired Students UVA - 12108的更多相关文章
- uva 12108 Extraordinarily Tired Students (UVA - 12108)
算法完全转载...原博客(https://blog.csdn.net/u014800748/article/details/38407087) 题目简单叙述 题目就是一堆学生他们有清醒的时候和昏迷的时 ...
- 【模拟】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 ...
- [刷题]算法竞赛入门经典(第2版) 4-8/UVa12108 - Extraordinarily Tired Students
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 代码:(Accepted,0 ms) //UVa12108 - Extraordinarily Tired Stude ...
- UVA 12108 Extraordinarily Tired Students
思路: ①用结构体stu,属性有清醒时间,睡眠时间,开始处于的时间,状态(醒着还是睡着), 还有计数器. ②二维数组存表格. ③在确定接下来要进入的状态之后,就一次把表格里持续状态的数据都修改掉,比如 ...
- 【习题 4-8 UVA - 12108】Extraordinarily Tired Students
[链接] 我是链接,点我呀:) [题意] [题解] 一个单位时间.一个单位时间地模拟就好. 然后对于每个人. 记录它所处的周期下标idx 每个单位时间都会让每个人的idx++ 注意从醒着到睡着的分界线 ...
- UVa 12108 特别困的学生
https://vjudge.net/problem/UVA-12108 题意:给出n个学生的“清醒—睡眠”周期和初始时间点,每个学生在睡眠时需要判断全班睡觉人数是否严格大于清醒人数,否则在坚持一个清 ...
- UVa 107 - The Cat in the Hat (找规律,注意精度)
题目来源:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=3&pa ...
- UVA 607 二十二 Scheduling Lectures
Scheduling Lectures Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submi ...
- The Trip PC/UVa IDs: 110103/10137, Popularity: B, Success rate: average Level: 1
#include<cstdio> #include<iostream> #include<string> #include<algorithm> #in ...
随机推荐
- centos mono
wget http://download.mono-project.com/sources/mono/mono-4.0.1.tar.bz2wget http://download.mono-proje ...
- docker certificates
x509: certificate is valid for mmtrkjy.com, *.mmtrkjy.com, *.mmtrkmc.com, *.mmtrkpd.com, *.mmtrksg.c ...
- WPF中CheckBox三种状态打勾打叉和滑动效果
本文分为两个demo, 第一个demo实现checkBox的打叉或打勾的效果: 第二个demo部分实现checkBox的滑动效果. Demo1: wpf的CheckBox支持三种状态,但是美中不足的是 ...
- Android按钮单击事件的四种常用写法总结
很多学习Android程序设计的人都会发现每个人对代码的写法都有不同的偏好,比较明显的就是对控件响应事件的写法的不同.因此本文就把这些写法总结一下,比较下各种写法的优劣,希望对大家灵活地选择编码方式可 ...
- OpenGL-----深度测试,剪裁测试、Alpha测试和模板测试
片断测试其实就是测试每一个像素,只有通过测试的像素才会被绘制,没有通过测试的像素则不进行绘制.OpenGL提供了多种测试操作,利用这些操作可以实现一些特殊的效果.我们在前面的课程中,曾经提到了“深度测 ...
- 百度地图API地点搜索-获取经纬度
分享一下地图上的地点搜索和鼠标点击获取地点经纬度,这些都是地图比较基本和实用的代码,其中还包括了根据用户IP进行地图的显示.改变地图上的鼠标样式.启用滚轮缩放等,算是半入门吧,其他的一些可以自己参考百 ...
- vue数据源转json问题
开发过程中使用到了vue框架进行前端批量数据的处理,将批量数据转换为json格式进行ajax传参时需要注意将vue数据源得到的json结果进行如下处理,webservice接收json数据时无法有效的 ...
- Windows API 之 CreateFile
Creates or opens a file or I/O device. The most commonly used I/O devices are as follows: file, file ...
- MYSQL启用日志,查看日志,利用mysqlbinlog工具恢复MySQL数据库【转载】
转自 MYSQL启用日志,查看日志,利用mysqlbinlog工具恢复MySQL数据库 - _安静 - 博客园http://www.cnblogs.com/xionghui/archive/2012/ ...
- 区间的关系的计数 HDU 4638 离线+树状数组
题目大意:给你n个人,每个人都有一个id,有m个询问,每次询问一个区间[l,r],问该区间内部有多少的id是连续的(单独的也算是一个) 思路:做了那么多离线+树状数组的题目,感觉这种东西就是一个模板了 ...