1968. 買水(h2o)

1968. 買水(h2o)

題目描述
小PP超喜歡喝水,所以他就去買水了。
商店裏有 5 種水
第 1 種:商店裏有無數瓶
第 2 種:商店裏只有一瓶
第 3 種:商店裏竟然有 4 瓶 。
第 4 種: 5 瓶5 瓶一包賣的
第 5 種: 2 瓶 2 瓶一包賣的
好奇心極強的小PP想買 n 瓶水,他想知道他有多少種買法。

輸入
輸入文件 h2o.in 的第一行包括一個正整數N

輸出
輸出文件h2o.out 有且僅有一個整數 , 爲買水方案數。

樣例輸入

1

樣例輸出

3

數據範圍限制
對於 10% 的數據: n<=10;
有 20% 的數據: n<=100000;
對於 100% 的數據: n<=2147483647;

我也不是神!
先暴力打表看看規律:
在這裏插入圖片描述
大家看什麼,相信都知道了。
其實對於買N瓶,其實就是:1+2+3+4…+(N+1)
然後按照等差數列的公式:(首項+末項)*項數/2;
那本題的答案就是:

1+n+1*(n+1/2
	 化簡一下:(2+n)*(n+1)/2
#include<cstdio>
#include<iostream>
#include<cmath>
#include<cstring>
#include<string>
#include<algorithm>
#include<vector>
#define fre(x) freopen(#x".in","r",stdin),freopen(#x".out","w",stdout);
using namespace std;
const int MAX=2147483647;
const int N=1e6;
long long n,ans;
int main()
{
	fre(h2o);
	scanf("%lld",&n);
	printf("%lld\n",(2+n)*(n+1)/2);
	return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章