HDU-5391 Zball in Tina Town

来源:互联网 发布:张靓颖冯轲sm 知乎 编辑:程序博客网 时间:2024/05/17 08:01
#include <iostream>#include <cstdio>using namespace std;int t, n;int main(){    scanf("%d", & t);    while(t --)    {        scanf("%d", & n);        bool flag = true;        for(int i = 2; i * i <= n; i ++)        {            if(n % i == 0)            {                flag = false;                break;            }        }        if(n == 4)            printf("2\n");        else        {            if(flag)                printf("%d\n", n - 1);            else                printf("0\n");        }    }    return 0;}
题意:Tina有一个球,它的名字叫zball。zball很神奇,它会每天变大。在第一天的时候,它会变大1倍。在第二天的时候,它会变大2倍。在第n天的时候,它会变大n倍。

zball原来的体积是1。Tina想知道,zball在第n-1天时的体积对n取模是多大呢?

题解:

无聊 

这题就是求 (n −1) !  mod  n
如果n为合数,显然答案为0.
如果n为素数,那么由威尔逊定理可得答案为 n - 1
注意有个trick为 n = 4

0 0
原创粉丝点击