╥﹏╥结果正确,但每个检测点都是WA
查看原帖
╥﹏╥结果正确,但每个检测点都是WA
1048657
fanchengqiao楼主2023/7/25 23:28
初学,思路有一点点小奇怪

看到很多人用数组,但我试图用最基础朴素的思想去解决这个问题

思路如下:

变量设置:预算budget、

每个月拿到300之后的手上有的钱have用于与budget比对、

存在妈妈那的钱save,

计数器count、储存第一次余额不足月份month、循环读取数据数量m=12

流程:

读取budget

将budget与have比对

如果budget小,计算下一轮开始前的save与have

save由差值对100地板除法再乘以100得到,加到前一次save中

而have是减去save和budget,再领取300元

比较后若余额不足,have=300,下个月再说

这个时候记录最小月份

于是每个测试点都是WA救命qwq

#include<iostream>
using namespace std;
int main()
{
	int budget,have=300,save=0,count,month,m=12;
	for(int i=0;i<m;i++)//读取12个数据
	{
		cin>>budget;
		if(budget<=have)//比较这个月钱够不够
		{
			save+=((have-budget)/100)*100;
			have=have-budget-((have-budget)/100)*100+300;//为下一轮准备好数据
		}
		else//钱不够
		{
			have=300;
			count+=1;//每次钱不够,计数器都记得
			if(count==1)//但是第一次会把相应的月份告诉我
				month=i+1;
		}
		/*cout<<save<<" "<<have<<" "<<endl;*/
	}//这是输出中间变量调试用的
	if(count!=0)
		cout<<"-"<<month;//按照题目要求输出结果
	else
		cout<<have+save*1.2-300;
	return 0;		
}
2023/7/25 23:28
加载中...