| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 512 人关注过本帖
标题:好大的数Sn 取模
只看楼主 加入收藏
Baoshenglin
Rank: 2
等 级:论坛游民
帖 子:22
专家分:27
注 册:2013-3-2
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:6 
好大的数Sn 取模
对于Sn=(2^n-1+n)取模9973,
整数n( 0 < n < = 1,000,000,000 ),

求各位大神帮忙!!
2013-05-18 19:21
czz5242199
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:660
专家分:2400
注 册:2011-10-26
收藏
得分:2 
二分法 ,利用2^n=(2^(n/2))^2
2013-05-18 20:41
Baoshenglin
Rank: 2
等 级:论坛游民
帖 子:22
专家分:27
注 册:2013-3-2
收藏
得分:0 
回复 2楼 czz5242199
可是当N很大时,Sn没取模就已经溢出了。
2013-05-18 21:24
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:2 
(a * b) % c = (a % c) * (b % c) % c


[fly]存在即是合理[/fly]
2013-05-19 01:16
czz5242199
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:660
专家分:2400
注 册:2011-10-26
收藏
得分:2 
回复 3楼 Baoshenglin
边计算边取模啊
2013-05-19 10:07
Baoshenglin
Rank: 2
等 级:论坛游民
帖 子:22
专家分:27
注 册:2013-3-2
收藏
得分:0 
回复 5楼 czz5242199
超时的   才1秒
能给个具体代码吗?
2013-05-19 21:41
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:4 
int fun(int n)
{
  if (n < 30)  return (1 << n) % N;
  int ans = fun(n / 2);
  ans = ans * ans % N;
  if (n & 1)  ans = ans * 2 % N;
  return ans;
}


[fly]存在即是合理[/fly]
2013-05-20 00:02
快速回复:好大的数Sn 取模
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015564 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved