我发这题只是想说明:有时候确实需要用水题来找找自信的~
代码如下:
#include <stdio.h>
#include <algorithm>
#include <string.h>
using namespace std;
typedef long long ll; int num[+] = {,,,,,,,,,,,,,,,,,,,,};
int sum[+]; void init()
{
for(int i=;i<=;i++) num[i] = + num[i-];
num[] = ;
for(int i=;i<=;i++) num[i] = + num[i-];
num[] = ;num[] = ;num[] = ;num[] = ;num[] = ;num[] = ;
for(int i = ;i<=;i++)
{
if(i%==) continue;
else num[i] = num[i-i%] + num[i%];
}
num[] = ;
for(int i=;i<=;i++)
{
if(i%==)
{
num[i] = num[i/] + ;
}
else
{
num[i] = ;
num[i] += num[i-i%] + num[i%];
}
}
num[] = ;
for(int i=;i<=;i++) sum[i] = sum[i-] + num[i];
} int main()
{
init();
int T;scanf("%d",&T);
while(T--)
{
int n;scanf("%d",&n);
printf("%d\n",sum[n]);
}
}