小Q定義了一種數列稱爲翻轉數列:
給定整數n和m, 知足n能被2m整除。對於一串連續遞增整數數列1, 2, 3, 4..., 每隔m個符號翻轉一次, 最初符號爲'-';。
例如n = 8, m = 2, 數列就是: -1, -2, +3, +4, -5, -6, +7, +8.
而n = 4, m = 1, 數列就是: -1, +2, -3, + 4.
小Q如今但願你能幫他算算前n項和爲多少。 ios
輸入包括兩個整數n和m(2 <= n <= 109, 1 <= m), 而且知足n能被2m整除。
輸出一個整數, 表示前n項和。
8 2
8
#include<iostream> using namespace std; int main(){ long long m,n; //while(true){ cin>>n>>m; cout<<(m*m)*n/(2*m)<<endl; //} return 0; }