• 51Nod 1014 X^2 Mod P


    X*X mod P = A,其中P为质数。给出P和A,求<=P的所有X。
     
    Input
    两个数P A,中间用空格隔开。(1 <= A < P <= 1000000, P为质数)
    Output
    输出符合条件的X,且0 <= X <= P,如果有多个,按照升序排列,中间用空格隔开。
    如果没有符合条件的X,输出:No Solution
    Input示例
    13 3
    Output示例
    4 9

     1 #include <iostream>
     2 #include <cstring>
     3 #include <string>
     4 #include <algorithm>
     5 #include <stdio.h>
     6 using namespace std;
     7 #define ll long long
     8 ll quickm(ll m,ll n,ll p)
     9 {
    10     ll b=1;
    11     while(n){
    12         if(n&1) b=(b*m)%p;
    13         n=n>>1;
    14         m=(m*m)%p;
    15     }
    16     return b;
    17 }
    18 int main()
    19 {
    20     ll p,a;
    21     scanf("%d%d",&p,&a);
    22     ll t=0,i;
    23     for(i=1;i<=p;i++){
    24         if(quickm(i,2,p)==a){
    25             if(t==0) printf("%d",i);
    26             else printf(" %d",i);
    27             t++;
    28         }
    29     }
    30     if(t==0) printf("No Solution
    ");
    31     else printf("
    ");
    32     printf("
    ");
    33     return 0;
    34 }
  • 相关阅读:
    Robot Framework + Selenium library + IEDriver环境搭建
    【转】大话测试数据(一)
    TEST DESIGN TECHNIQUES: AN OVERVIEW
    24 WHEN CAN WE STOP TESTING?
    MySql Trace
    ORGANISING THE TEST CASES
    angular教程
    vue报错一
    sort()
    时间戳
  • 原文地址:https://www.cnblogs.com/wydxry/p/7237307.html
Copyright © 2020-2023  润新知