題目連結: https://zerojudge.tw/ShowProblem?problemid=a215

# 內容

明明是一個愛數(ㄕㄨˇ)數(ㄕㄨˋ)的好學生,這天媽媽叫他從 n 開始數,下一個數字是 n+1,再下一個數字是 n+2,以此類推。媽媽想知道,明明數了幾個數字之後,他數過的這些數字的總和會超過 m。請幫助明明的媽媽吧。

# 輸入

輸入以 EOF 結束。每一筆測試資料有兩個數字,分別為 n 和 m,其中 m-n 不會超過 105

# 輸出

輸出如題目敘述。

例 1 輸入:1 、 5 ,輸出 : 3 -->1+2+3= 6 > 5

例 2 輸入:5 、10, 輸出: 2 --> 5+6 = 11 > 10

# 解題思路

從第一項 (自己本身) 開始,每次皆加上下一個數 (n + 項數),並檢測是否超過 m,若超過則輸出並跳出迴圈。

# 程式碼

#include <iostream>
using namespace std;
int main(){
    int n,m;
    while(cin>>n>>m){
        int sum = 0;
        for(int i =0; ;i++){
            sum += n+i;
            if(sum > m){
                cout<<i+1<<endl;
                break;
            }
        }
    }
}
更新於 閱讀次數

用實際行動犒賞爆肝的我😀

Zrn Ye LinePay

LinePay