Euler theorem
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others)
Total Submission(s): 494 Accepted Submission(s): 400
Problem Description
HazelFan is given two positive integers a,b,
and he wants to calculate amodb.
But now he forgets the value of b and
only remember the value of a,
please tell him the number of different possible results.
Input
The first line contains a positive integer T(1≤T≤5),
denoting the number of test cases.
For each test case:
A single line contains a positive integer a(1≤a≤109).
For each test case:
A single line contains a positive integer a(1≤a≤109).
Output
For each test case:
A single line contains a nonnegative integer, denoting the answer.
A single line contains a nonnegative integer, denoting the answer.
Sample Input
2 1 3
Sample Output
2 3
//题意:给定正整数a,求对于所有正整数b,amodb有多少种可能的结果。
//思路:显然小于<a/2的每个非负整数c都是可能成为余数的,取b=a-c即可,另外a本身也能成为余数,而其他数显然都不可能。
#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <cstring>
#include <string>
using namespace std;
int main()
{
int T;
scanf("%d", &T);
while (T--)
{
int a;
scanf("%d", &a);
int ans = (a + 1) / 2 + 1;
printf("%d\n", ans);
}
return 0;
}