http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=489

题目大意:

给你正整数n,求最小的x使得2^x mod n = 1。

思路:

n=1无解。任何正数mod 1都为0吧

n为偶数无解,why? 上式可变形为: 2^x=k*n+1,若n为偶数那么k*n+1为奇数,而2^x必为偶数。

n为奇数一定有解,对于乘法逆元:在a mod n的操作下,a存在乘法逆元当且仅当a与n互质。

#include<cstdio>
int main()
{
int n;
while(~scanf("%d",&n))
{
if( !(n & 1) || n==1)
{
printf("2^? mod %d = 1\n",n);
continue;
}
int d=1;
for(int i=1;;i++)
{
d*=2;
if(d%n==1)
{
printf("2^%d mod %d = 1\n",i,n);
break;
}
d%=n;
}
} return 0;
}

最新文章

  1. 分布式缓存Memcached---开篇的话
  2. JavaWeb前端:CSS
  3. Access批量操作
  4. August 6th, 2016, Week 32nd, Saturday
  5. 在Linux下安装aws命令行操作
  6. 帝国CMS商城功能高级使用
  7. 几年前无聊小游戏之作_WEB版本打泡泡
  8. Stack栈的三种含义
  9. Oracle数据库 Synonym和DBLink
  10. 云栖大会day2总结 上午
  11. PHP程序员解决问题的能力
  12. MATLAB 图形着色
  13. 001-分布式理论-CAP定理
  14. docker mac
  15. Jmeter之分布式执行测试
  16. asp.net 获得域名,端口,虚拟目录[转]
  17. 97.394570112228 - Query OK, 1 row affected (43.05 sec) - the overhead of parsing and network communication
  18. mysql_connect
  19. 【代码笔记】iOS-archive保存图片到本地
  20. JavaScript 三个常用对话框

热门文章

  1. jquery05 继承
  2. mvc表单Form提交 --实体
  3. Standalone 集群部署
  4. 【bzoj4864】神秘物质
  5. last---显示用户最近登录信息
  6. Android实战简易教程-第二十五枪(基于Baas的数据表查询下拉刷新和上拉载入实现!)
  7. AngularJS渲染性能分析
  8. BZOJ 1027 JSOI2007 合金 计算几何+Floyd
  9. Qt程序调试之Q_ASSERT断言(它是一个宏,接受布尔值,当其中的布尔值为真时,便什么也不做)
  10. R 语言下常用第三方库的说明