廚師的計算器有兩個屏幕和兩個按鈕。最初,每個屏幕顯示數字零。按下第一個按鈕會將第一個屏幕上的數字增加1,並且每次點擊第一個按鈕將消耗1個單位的能量。無法在代碼7月挑戰中的邏輯中找到錯誤
按下第二個按鈕將增加第二個屏幕上的數字,當前出現在第一個屏幕上。每次點擊第二個按鈕消耗B單位的能量。
最初計算器有N個能量單位。
現在,廚師想知道最大可能的數字是多少,他在有限的能量下進入計算器的第二個屏幕。 這裏是鏈接:https://www.codechef.com/JULY17/problems/CALC/
比賽結束了,所以我沒有試圖欺騙。 這裏是我的問題的解決方案:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int t;
cin>>t;
while(t--)
{
int n,b;
cin>>n>>b;
int count = 1;
int ans = n-b;
while((n - count*b)>=0)
{
if(count*(n - count*b)>ans)
ans = count*(n - count*b);
count++;
}
cout<<ans<<endl;
}
return 0;
}
我都試過,我能想到的...誰能幫助找到我的邏輯錯誤每個測試用例。
請仔細閱讀爲什麼你應該避免兩種['位/ STDC++。h'(https://stackoverflow.com/questions/31816095/why -hould-i-not-include-bits-stdc-h)和['using namesapce std;'](https://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad -實踐)。最重要的是,避免一起使用它們。 – StoryTeller
首先請閱讀[爲什麼我不應該#include?](https:// stackoverflow。com/questions/31816095/why-should-i-not-include-bits-stdc-h)然後[閱讀關於如何提出好問題](http://stackoverflow.com/help/how-to-ask),還有Eric Lippert的[如何調試小程序](https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)。 –
更重要的是,我錯過了該問題的錯誤描述。 – MSalters