您的位置:首页 > 大数据 > 人工智能

UVa 362 - 18,000 Seconds Remaining

2017-08-25 14:41 183 查看
题目:模拟网络发送数据的过程,每5秒钟统计显示对应状态(计算剩余时间或则返回阻塞)。

分析:模拟。按照题目描述每5秒统计模拟即可。

说明:如果最后不足5秒就不需要输出状态了。

#include <stdio.h>
#include <stdlib.h>

int main()
{
int total, block, cases = 1;
while (~scanf("%d",&total) && total) {
printf("Output for data set %d, %d bytes:\n",cases ++, total);
int count = 0;
while (total) {
int sum = 0;
while (total) {
scanf("%d",&block);
sum += block;
total -= block;
if ((++ count)%5 == 0) {
break;
}
}
if (count%5 != 0) {
break;
}
if (sum) {
int remaind = 5*total%sum;
printf(" Time remaining: %d seconds\n",5*total/sum + (remaind>0));
}else {
printf(" Time remaining: stalled\n");
}
}
printf("Total time: %d seconds\n\n",count);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: