您的位置:首页 > 产品设计 > UI/UE

UESTC OJ 1647Battery Charging 模拟题

2015-07-07 13:19 447 查看
题意很简单,就是判断在把手机卖出之前最多能玩多少天,能玩手机的前提是要有足够的电量。第i天充电能获得i单元的电量,第i天玩手机需要消耗i单位的电量。

思路:模拟,能玩的时候就玩,因为数据范围过大,模拟的时候不能一天一天模拟,需要跳跃式模拟。

ac代码:

#include <iostream>

#include <cstdio>

using namespace std;

int main()

{

int numcase;

scanf("%d",&numcase);

for(int i = 1;i <= numcase;++i)

{

int m,n;

scanf("%d%d",&m,&n);

int sum = 0;

if(n - m <2)

{

sum = 0;

continue;

}

else

{

while(m <= n)

{

int x = 2 * m + 1 - m - 2;

m += 2;

if(n >= m + 2*x + 1)

{

sum += (x + 1);

m = m + 2*x + 1;

}

else

{

int y = (n - m)/2;

sum += (y + 1);

break;

}

}

}

printf("Case #%d: %d\n",i,sum);

}

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: