水。模拟即可。使用EXGCD求逆元

  1. #include <iostream>
  2. #include <cstdio>
  3. #include <cstring>
  4. #include <algorithm>
  5. #define LL __int64
  6. using namespace std;
  7.  
  8. LL p,q,e,n,f,d;
  9.  
  10. void exgcd(LL a,LL b,LL &x,LL &y){
  11. if(b==0){
  12. x=1; y=0;
  13. return ;
  14. }
  15. exgcd(b,a%b,x,y);
  16. LL tmp=x;
  17. x=y;
  18. y=tmp-(a/b)*y;
  19. }
  20.  
  21. LL quick(LL a,LL b,LL m){
  22. a%=m;
  23. LL ans=1;
  24. while(b){
  25. if(b&1)
  26. ans=(ans*a)%m;
  27. b>>=1;
  28. a=(a*a)%m;
  29. }
  30. return ans;
  31. }
  32.  
  33. int main(){
  34. LL l,num;
  35. LL x,y;
  36. while(scanf("%I64d%I64d%I64d%I64d",&p,&q,&e,&l)!=EOF){
  37. n=p*q;
  38. f=(p-1)*(q-1);
  39. exgcd(e,f,x,y);
  40. x=(x%f+f)%f;
  41. for(LL i=1;i<=l;i++){
  42. scanf("%I64d",&num);
  43. int ans=(int)quick(num,x,n);
  44. printf("%c",ans);
  45. }
  46. printf("\n");
  47. }
  48. return 0;
  49. }

  

HDU 1211的更多相关文章

  1. HDU 1211 EXGCD

    EXGCD的模板水题 RSA算法给你两个大素数p,q定义n=pq,F(n)=(p-1)(q-1) 找一个数e 使得(e⊥F(n)) 实际题目会给你e,p,q计算d,$de \mod F(n) = 1$ ...

  2. hdu 1211 RSA

    // 表示题目意思我是理解了蛮久 英语太水了 //首先这是解密公式 m=c^d mod n// 给你 p q e 然后 n=p*q fn=(p-1)*(q-1)// 给你 e,根据公式 e*d mod ...

  3. hdu 1211 逆元

    RSA Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...

  4. hdu 1211 RSA (逆元)

    RSA Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...

  5. HDU——PKU题目分类

    HDU 模拟题, 枚举1002 1004 1013 1015 1017 1020 1022 1029 1031 1033 1034 1035 1036 1037 1039 1042 1047 1048 ...

  6. [转] HDU 题目分类

    转载来自:http://www.cppblog.com/acronix/archive/2010/09/24/127536.aspx 分类一: 基础题:1000.1001.1004.1005.1008 ...

  7. HDU ACM 题目分类

    模拟题, 枚举1002 1004 1013 1015 1017 1020 1022 1029 1031 1033 1034 1035 1036 1037 1039 1042 1047 1048 104 ...

  8. 转载:hdu 题目分类 (侵删)

    转载:from http://blog.csdn.net/qq_28236309/article/details/47818349 基础题:1000.1001.1004.1005.1008.1012. ...

  9. hdu 1576 A/B(拓展欧几里得)

    A/B Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...

随机推荐

  1. c#基于udp实现的p2p语音聊天工具

    原创性申明 此博文的出处 为 http://blog.csdn.net/zhujunxxxxx/article/details/40124773假设进行转载请注明出处.本文作者原创,邮箱zhujunx ...

  2. [React Router] Create a ProtectedRoute Component in React Router (setState callback to force update)

    In this lesson we'll create a protected route just for logged in users. We'll combine a Route with a ...

  3. android布局中显示隐藏动画

    android 在布局中提供属性,能简单的加入动画效果,例如以下: <LinearLayout ... animateLayoutChanges="true" ... /&g ...

  4. java之 ------ 设计思想

    java的设计思想 (设计思想.是须要不断领悟的.. . ) 一.封装 学java的人都知道这是向对象的编程语言,从字面上理解,就是针对对象的一些操作,将具有某一特性的实体封装成一个类或者是将具有一定 ...

  5. Linux 程序设计学习笔记----Linux下文件类型和属性管理

    转载请注明出处:http://blog.csdn.net/suool/article/details/38318225 部分内容整理自网络,在此感谢各位大神. Linux文件类型和权限 数据表示 文件 ...

  6. c3---scanf

    #include <stdio.h> int main(int argc, const char * argv[]) { // 要求: 存储用户输入的整数 // 1.用户输入的整数确定吗? ...

  7. SQL Server loop - how do I loop through a set of records

    SQL Server loop - how do I loop through a set of records By using T-SQL and cursors like this : DECL ...

  8. CentOS 7 安装 vmware tools 提示The path "" is not a valid path to the 3.10.0-957.el7.x86_64 kernel headers.

    输入“mkdir /mnt/cdrom”在/mnt目录下新建一个名为cdrom的文件夹 mkdir /mnt/cdrom 输入“mount -t iso9660 /dev/cdrom /mnt/cdr ...

  9. 踩坑 Windows 解决pip install出现“由于目标计算机积极拒绝,无法连接”的问题

    解决pip install出现“由于目标计算机积极拒绝,无法连接”的问题   可能是使用某软件自动设置了代理, 所以需要手动的取消代理才可以.   在Intel选项中把所有的代理都给去掉就可以了... ...

  10. POJ 2446 匈牙利算法

    题意: 思路: 二分图匹配... // by SiriusRen #include <cmath> #include <cstdio> #include <cstring ...