规律题:被n=2的这种情况坑了!
#include <iostream>
#include <cstdio>
#include <vector>
using namespace std;
int main(){
vector<int> dd;
dd.push_back(0);
dd.push_back(0);
dd.push_back(1);
for(int i = 2; i <= 17000; i++){
int tmp = ((i+1)*i)/2;
dd.push_back(tmp);
}
int ncase;
cin >> ncase;
while(ncase--){
int n;
int ans = 0;
scanf("%d",&n);
if(n==1){
cout<<"0"<<endl;
continue;
}
if(n==2){//坑爹啊
cout<<"0"<<endl;
continue;
}
if(n%2==0){
ans = dd[n/2]*2;
}else{
ans = dd[n/2]+dd[n/2+1];
}
cout<<ans<<endl;
}
return 0;
}