95 条题解
-
0一路向北 LV 8 @ 2009-10-28 21:12:40
我敢肯定,数据超过了50位,为此我花了一天多啊
-
02009-10-27 18:54:39@
神经衰弱中~~~
-
02009-10-24 10:22:55@
原来有多组数据.....
-
02009-10-23 23:31:46@
这题。。- -||||
做递归做到栈溢出。。
无语。。目前还没AC。。。 -
02009-10-22 22:19:13@
puppy已经失踪一星期了,
终于还是用sunny勉强过掉.
具体方法参考楼下的牛们编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 572ms
├ 测试数据 03:答案正确... 603ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:1175ms -
02009-10-10 19:04:27@
sunny 过不了
我用 puppy 过的 -
02009-10-10 19:00:04@
├ 测试数据 01:答案正确... 72ms
├ 测试数据 02:答案正确... 41ms
├ 测试数据 03:答案正确... 72ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:185ms我开了八位才过
-
02009-10-06 09:35:29@
用read全错,用readln就AC了
-
02009-10-05 23:08:50@
puppy比sunny快很多,怎么这么不均衡?
-
02009-10-01 15:08:41@
惊喜地发现我AC后此题AC率上升了一个百分点
-
02009-09-27 23:16:56@
为什么大家的做法都一样?
我的方法就很不同!查看题解
-
02009-09-27 08:02:09@
编译通过...
├ 测试数据 01:答案正确... 56ms
├ 测试数据 02:答案正确... 72ms
├ 测试数据 03:答案正确... 103ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:231ms未打表.....
Orz puppy!我的JP电脑都没他快...... -
02009-09-22 13:06:59@
可以压9位么?9位会有危险么?...
-
02009-09-20 10:46:10@
预先算出结果,然后交给Puppy搞定……
-
02009-09-19 19:32:19@
var
f:array[0..1500000,0..6] of longint;
i,j,n,t,p:longint;
num:array[1..30] of longint;procedure main;
begin
for i:=1 to n div 2 do
for j:=6 downto 1 do
begin
f:=f+f[i div 2,j]+f;
f:=f+f div 1000000000;
f:=f mod 1000000000;
end;
end;begin
while not eof do
begin
t:=t+1;
readln(num[t]);
if num[t]>n then n:=num[t];
end;
f[0,6]:=1;
main;
for p:=1 to t do
begin
num[p]:=num[p] div 2;
for i:=0 to 6 do
if f[num[p],i]0 then break;
write(f[num[p],i]);
for j:=i+1 to 6 do
begin
if f[num[p],j] div 10=0 then write('00000000') else
if f[num[p],j] div 100=0 then write('0000000') else
if f[num[p],j] div 1000=0 then write('000000') else
if f[num[p],j] div 10000=0 then write('00000') else
if f[num[p],j] div 100000=0 then write('0000') else
if f[num[p],j] div 1000000=0 then write('000') else
if f[num[p],j] div 10000000=0 then write('00') else
if f[num[p],j] div 100000000=0 then write('0');
write(f[num[p],j]);
end;
writeln;
end;
end.同样的程序
Sunny
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 650ms
├ 测试数据 03:答案正确... 712ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:1362msDragon
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 72ms
├ 测试数据 03:答案正确... 72ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:144msPuppy
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 41ms
├ 测试数据 03:答案正确... 72ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:113ms -
02009-09-18 17:25:59@
-
02009-09-15 19:37:41@
program p1136;
const p=1000000000;
var n,i,j,k,t:longint;
dp:array[0..1500000,0..8]of longint;
begin
dp[0,0]:=1;
dp[0,1]:=1;
for i:=1 to 1500000do
begin
dp[i]:=dp;
k:=i shr 1;
for j:=1 to dp[k,0]do
begin
dp:=dp+(dp[k,j]+dp)div p;
dp:=(dp[k,j]+dp)mod p;
end;
while dp[i,dp+1]0 do inc(dp);
for j:=1 to dpdo
begin
dp:=dp+dpdiv p;
dp:=dpmod p;
end;
while dp[i,dp+1]0 do inc(dp);
end;while not eof do
begin
readln(n);
n:=n shr 1;
write(dp[n,dp[n,0]]);
for i:=dp[n,0]-1 downto 1 do
case dp[n,i]of
0..9:write('00000000',dp[n,i]);
10..99:write('0000000',dp[n,i]);
100..999:write('000000',dp[n,i]);
1000..9999:write('00000',dp[n,i]);
10000..99999:write('0000',dp[n,i]);
100000..999999:write('000',dp[n,i]);
1000000..9999999:write('00',dp[n,i]);
10000000..99999999:write(0,dp[n,i]);
else write(dp[n,i]);
end;
writeln;
end;
end.
交上去之后显示AC
点进去都是运行超时,FLAG AC
刷新又变成0分
????
BUG -
02009-09-12 19:07:01@
囧,赞楼下【qscesz123】的题解,我copy了一下下……~~
结果一开始抄错了一个小地方,WA了一次……
还有,第一次见识到了过程里面嵌套过程Orz然后我就简写了一下,大部分雷同(就是抄的)
我这么弱该怎么办啊……
(不知时间为什么满了好多。我在过程里面并没有另开数组,怎么会慢了呢?)
(难道是,评测机sunny?)编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 400ms
├ 测试数据 03:答案正确... 400ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:800msconst filename='p1136';
w=1000000000;
var
a:array[1..1500000,0..7]of longint;
i,j,n,max:longint;
function maxn(x,y:longint):longint;{y then exit(x);exit(y);end;
procedure jia(i1,i2,i3:longint);
var i,s,t:longint;
begin
t:=0;
for i:=1 to maxn(a[i2,0],a[i3,0])do
begin
s:=a[i2,i]+a[i3,i]+t;
t:=s div w;
a[i1,i]:=s mod w;
end;
if t0 then begin inc(i);a[i1,i]:=t mod w;end;
a[i1,0]:=i;
end;
procedure print;
var i:longint;
procedure zero(t:longint);
begin
while t -
02009-09-03 22:01:26@
好吧....n=1时要用Continue...不能用Halt....悲剧......
见notblack题解
外加补充:压缩时压9位,数组[1..1500001,0..7].....
此题好WS.....就那个Continue与Halt的问题....我交了10次左右.... -
02009-09-03 21:35:18@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 88ms
├ 测试数据 03:答案正确... 88ms
---|---|---|---|---|---|---|---|-压位,压时间,压空间,终于过了………………
好吉利的数字
至于方法,楼下的牛牛们已经讲得很清楚了