2014 Multi-University Contest 1.1 hdu4861 打表找规律

打表水题

将p=2,3,5,7时,将每个球的value打表出来

官方解题报告


 没看懂。。。

贴打表找出规律(循环节)的代码

#include <iostream>
#include <cstdio>
using namespace std;

/*int a[4][100];
int prime[4]={2,3,5,7};
int func(int a,int b,int p){
    a %= p;
    int sum=1;
    for(int i=1;i<=b;i++){
        sum = sum*a%p;
    }
    return sum;
}
int main()
{
    cout<<"打表"<<endl;
    for(int i=0;i<4;i++){
        int p=prime[i];
        for(int j=1;j<100;j++){
            for(int t=1;t<p;t++)
                a[i][j] = (a[i][j]+func(t,j,p))%p;
        }
    }
    for(int i=0;i<4;i++){
        for(int j=1;j<100;j++)
            cout<<a[i][j]<<" ";
        cout<<endl;
    }
    //cout << "Hello world!" << endl;
    return 0;
}*/
//根据打表结果,找到循环节为p-1
//p=2
//1111-1111-1111
//p=3
//0202-0202-0202
//p=5
//0004-0004-0004
int main(){
    int k,p;
    while(~scanf("%d%d",&k,&p)){
        k = k/(p-1);
        if(k&1)
            cout<<"YES"<<endl;
        else
            cout<<"NO"<<endl;
    }
    return 0;
}
View Code
在一个谎言的国度,沉默就是英雄
原文地址:https://www.cnblogs.com/EdsonLin/p/5316443.html