1. 程式人生 > >【OpenJudge7826】分蘋果(小學奧數)

【OpenJudge7826】分蘋果(小學奧數)

problem

總時間限制: 1000ms 記憶體限制: 65536kB
描述
把一堆蘋果分給n個小朋友,要使每個人都能拿到蘋果,而且每個人拿到的蘋果數都不同的話,這堆蘋果至少應該有多少個?

輸入
一個不大於1000的正整數n,代表小朋友人數。
輸出
一個整數,表示滿足條件的最少蘋果個數。
樣例輸入
8
樣例輸出
36
來源
《奧數典型題舉一反三(小學五年級)》 (ISBN 978-7-5445-2882-5) 第一章 第一講 習題6

solution

因為不能重複,所以最小的方案就是第一個人一個,第二個人兩個,第三個人三個,第n個人n個這樣。。。所以答案就是1+2+3+…n,,。。
所以等差數列求和公式O(1).

codes

#include<iostream>
using namespace std;
int main(){
    int n;  cin>>n;
    cout<<((1+n)*n/2)<<'\n';
    return 0;
}