天天看點

HDU 6124 Euler theorem

題目連結

題目意思

有兩個數a,b,計算a mod b。現在忘記了b,隻知道a,問你可能的結果有多少種。

解題思路

這就是一道規律題,我們觀察可以發現我們取模的結果要不是正好除盡為0,或者比他大餘它本身,還有就是餘下的不同個數,但是你會發現不管是什麼數,它的結果總是自身的一半加上一或者二。因為奇數的時候要加上它自身的一半那個數和它自身那個數。偶數的時候直接加上它自身就夠了。

代碼部分

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
int main()
{
    int T;
    scanf("%d",&T);
    while(T--)
    {
        int n;
        scanf("%d",&n);
        printf("%d\n",((n+)/)+);
    }
}