若给定b,则结果一定是b种(0到b-1)
但这题是给定a,手算几个很容易找到规律,可以这样证明
首先对于b>a的数 结果始终是a
对于a为偶数的情况,a/2为偶数,则b从a到a/2+1,余数为0,1,2,……a/2-1,
当b<=a/2,则b的余数<=a/2-1与上面的重合了,所以总共就有a/2-1-0+1+1=a/2+1种
当a为奇数,也这样来思考得到a/2+2种
#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<string.h>
using namespace std;
#define ll long long
#define MAXN 9999999
int t;
int n;
int main()
{
scanf("%d", &t);
while (t--)
{
int ans;
scanf("%d", &n);
if (n & 1)
{
ans = n / 2 + 2;
}
else
{
ans = n / 2 + 1;
}
printf("%d\n", ans);
}
return 0;
}