回 帖 发 新 帖 刷新版面

主题:2005 noip考题 1道

看程序写结果的
program m;
var n:longint;
function g(k:longint):longint;
begin
if k<=1 then g:=k
     else g:=(2002*g(k-1)+2003*(k-2)) mod 2005
end;
begin
read(n);
writeln(g(n));
end.
输入 2005
输出:?
这个怎么算 ?  我感觉用笔好象根本算不出来

回复列表 (共16个回复)

11 楼

郁闷,考这题的时候不知道可以这么算害偶浪费那么多时间

12 楼

g(x) = (-1)^(n-1)(2^n - 1) mod 2005
这个公式怎么来的,1楼的论证中好像没有提到这一点我很费解

13 楼

流汗!
我算了班天也不行!
I  服了 you!

14 楼

我是这样的,这个程序是1000个周期,所以g(2005)=g(5),所以。。。。。。

15 楼

答案错了,运行后为1704

16 楼

应该是1074

我来回复

您尚未登录,请登录后再回复。点此登录或注册