zoukankan      html  css  js  c++  java
  • HDU 5391-Zball in Tina Town(数论)

    题目地址:HDU 5391
    题意:
    Tina Town 是一个善良友好的地方,这里的每个人都互相关心。Tina有一个球,它的名字叫zball。

    zball非常奇妙,它会每天变大。

    在第一天的时候。它会变大11倍。在第二天的时候,它会变大22倍。在第nn天的时候,它会变大nn倍。zball原来的体积是11。Tina想知道,zball在第n-1n−1天时的体积对nn取模是多大呢?Tina是一个蠢蠢的女孩子。当然不会算啦,所以她请你帮她算出这个答案呢。
    思路:这题就是求 n(n−1)! % n。假设n为合数,显然答案为0.假设n为素数,那么由威尔逊定理可得答案为 n-1。注意特判一下n=4的情况,输出的是2.

    #include <stdio.h>
    #include <math.h>
    #include <string.h>
    #include <stdlib.h>
    #include <iostream>
    #include <sstream>
    #include <algorithm>
    #include <set>
    #include <queue>
    #include <stack>
    #include <map>
    #pragma comment(linker, "/STACK:102400000,102400000")
    using namespace std;
    typedef __int64  LL;
    const int inf=0x3f3f3f3f;
    const double pi= acos(-1.0);
    const double esp=1e-7;
    int main()
    {
        int T,n,i;
        scanf("%d",&T);
        while(T--) {
            scanf("%d",&n);
            if(n==4) {
                puts("2");
                continue;
            }
            int flag=0;
            int m=sqrt(n-1);
            for(i=2; i<=m; i++)
                if(n%i==0) {
                    flag=1;
                    break;
                }
            if(!flag)
                printf("%d
    ",n-1);
            else
                printf("0
    ");
        }
        return 0;
    }
    
  • 相关阅读:
    使用docker部署zabbix
    如何用好 IDEA ,Java 撸码效率至少提升 5 倍?
    getpass模块
    linux下利用nohup后台运行jar文件包程序
    Spring Cloud 与 Dubbo 区别
    git 打标签并推送tag到托管服务器
    git-stash用法小结
    git推送本地分支到远程分支
    Git dev分支合并到master分支完美实战
    IntelliJ远程调试教程
  • 原文地址:https://www.cnblogs.com/clnchanpin/p/7016695.html
Copyright © 2011-2022 走看看