281 条题解
-
0shiwanchun LV 5 @ 2009-01-14 11:59:53
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0msprogram isbn;
var
a,b,c,n,m,p,i,j:integer;
s:string;
x,y:array[1..20] of integer;
begin
read(s);
c:=length(s);
for i:=1 to c do
x[i]:=ord(s[i])-48;
a:=x[1]*1+x[3]*2+x[4]*3+x[5]*4+x[7]*5+x[8]*6+x[9]*7+x[10]*8+x[11]*9;
a:=a mod 11;
if (x[13]=a) then write('Right')
else if ((a=10) and (x[13]=40)) then write('Right')
else if (a=10) then
begin
for i:=1 to 12 do
write(chr(x[i]+48));
write('X');
end
else if (a10) and (ax[13]) then
begin
for i:=1 to 12 do
write(chr(x[i]+48));
write(chr(a+48));
end;
end. -
02008-12-26 22:09:09@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案错误...程序输出比正确答案长
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案错误...程序输出比正确答案长
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Unaccepted 有效得分:80 有效耗时:0msvar i,j,k,l,m,n,s:longint;
c:array[1..13] of char;
a:array[1..13] of longint;
begin
for i:=1 to 13 do read(c[i]);
j:=0;
for i:=1 to 12 do
if c[i]'-' then begin
inc(j);
a[j]:=ord(c[i])-48;
end;
m:=ord(c[13])-48;
s:=0;
for i:=1 to j do begin
s:=s+a[i]*i;
s:=s mod 11;
end;
if s=m then writeln('Right')
else begin
for i:=1 to 12 do write(c[i]);
if s=10 then write('X') else
write(s);
end;
end.我要疯掉了,为什么????????
-
02008-12-22 12:51:43@
var i,j,m,n,c,s,x:longint;
st,st1,k:string;
begin
readln(st);
st1:=copy(st,1,12);
j:=1;
for i:=1 to 11 do
begin
if st[i]'-' then begin
val(st[i],m,c);
s:=m*j+s;
inc(j);
end;
end;
x:=s mod 11;
if x10 then str(x,k)
else k:='X';
if k=st[13] then writeln('Right')
else writeln(st1,k);
end. -
02009-09-04 00:28:57@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms
被X害死了
一开始,50分,X输出没大写
又是80分,原来是读入时的X也是大写的
同学们注意啊var
s,s1:string;
i,j,n,n1:longint;
x:char;
z:boolean;procedure int;
begin
readln(s);
s1:=s;x:=s[length(s)];
n1:=length(s);
for i:=1 to length(s) doif s[i]='-' then delete(s,i,1);
n:=length(s);
end;procedure gai;
begin
if (j mod 11)=10 then
s1[n1]:='X'
else
s1[n1]:=chr((j mod 11)+48);
end;procedure doit;
begin
j:=0;
z:=false;for i:=1 to n-1 do
j:=j+(ord(s[i])-48)*i;
if (j mod 11)=10 then
if x='X' then begin z:=true;exit; end
else begin
gai;
exit;
end;if (j mod 11)=(ord(x)-48) then begin z:=true;exit; end
else begin
gai;
exit;
end;end;
begin
int;
doit;if z then writeln('Right')
else
write(s1);
end. -
02008-12-19 19:25:36@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms
极品水…… -
02008-12-19 17:17:18@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案错误...程序输出比正确答案长
├ 测试数据 05:答案错误... ├ 标准行输出
├ 错误行输出
├ 测试数据 06:答案错误... ├ 标准行输出
├ 错误行输出
├ 测试数据 07:答案错误...程序输出比正确答案长
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案错误... ├ 标准行输出
├ 错误行输出
├ 测试数据 10:答案正确... 0ms
为什么啊? -
02008-12-18 20:34:11@
狂晕输出'X'输成小写...我的通过率啊....
-
02008-12-16 22:45:30@
纯净水。。。
-
02008-12-14 14:49:41@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms -
02008-12-12 20:59:15@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0msprogram isbn;
var
s:string;
a:array[1..20] of integer;
i,j,k,l:integer;
begin
readln(s);
k:=0; l:=0;
for i:=1 to 12 do if s[i]'-' then
begin
inc(k);
l:=(ord(s[i])-ord('0'))*k+l;
end;
l:=l mod 11;
if l=10 then
begin
if s[13]='X' then writeln('Right')
else writeln(copy(s,1,12),'X');
end
else begin
if (ord(s[13])-ord('0'))=l then writeln('Right')
else writeln(copy(s,1,12),l);
end;
end.就是这一题,成就了我的NOIP2008!!哈哈哈哈!!!!!
-
02008-12-09 19:15:00@
惊愕!只输出Right竟然也能得30分......
可惜我考试没有cheat,结果竟然是0......
狂汗......只输出Right的结果:
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:运行时错误...|错误号: 5
├ 测试数据 03:运行时错误...|错误号: 5
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:运行时错误...|错误号: 5
├ 测试数据 06:运行时错误...|错误号: 5
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:运行时错误...|错误号: 5
├ 测试数据 09:运行时错误...|错误号: 5
├ 测试数据 10:运行时错误...|错误号: 5 -
02008-12-09 19:06:24@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms8分钟解决
-
02008-12-08 13:39:53@
program p1484;
var
s:string;
a:array[1..20] of integer;
p,i,t:integer;
begin
readln(s);
p:=0;
for i:=1 to length(S) do
begin
if s[i] in ['0'..'9'] then begin inc(p);a[p]:=ord(s[i])-ord('0'); end
else if s[i]='X' then begin inc(p);a[p]:=10;end;
end;
for i:=1 to p-1 do
begin
inc(t,a[i]*i);
t:=t mod 11;
end;
if t=a[p] then writeln('Right')
else
begin
write(copy(s,1,length(s)-1));
if not(t=10) then writeln(t)
else writeln('X');
end;
end. -
02008-12-07 14:19:19@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms最短的程序...
program p1484;
var
s:string[13];
i,j,x1:integer;
x2:char;
begin
readln(s);
j:=0;x1:=0;
for i:=1 to 11 do
if s[i]'-'
then begin
inc(j);
inc(x1,j*(ord(s[i])-48));
end;
if x1 mod 11=10
then x2:='X'
else x2:=chr(x1 mod 11+48);
if x2=s[13]
then writeln('Right')
else begin
s[13]:=x2;
writeln(s);
end;
end. -
02008-12-07 14:16:50@
笨笨的,短短的题解
{kevin}
program p1484;
var
i,t:longint;
ch:char;
a:string[9];
begin
read(a[1],ch,a[2],a[3],a[4],ch,a[5],a[6],a[7],a[8],a[9],ch,ch);
t:=0;
for i:=1 to 9 do
t:=t+(ord(a[i])-ord('0'))*i;
t:=t mod 11;
if ((ch='X')and(t=10)) or ((ord(ch)-ord('0'))=t)
then write('Right')
else begin
ch:='-';
write(a[1],ch,a[2],a[3],a[4],ch,a[5],a[6],a[7],a[8],a[9],ch);
if t=10
then write('X')
else write(t);
end;
end. -
02008-12-06 23:06:28@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms最短的程序...
program p1484;
var
s:string[13];
i,j,x1:integer;
x2:char;
begin
readln(s);
j:=0;x1:=0;
for i:=1 to 11 do
if s[i]'-'
then begin
inc(j);
inc(x1,j*(ord(s[i])-48));
end;
if x1 mod 11=10
then x2:='X'
else x2:=chr(x1 mod 11+48);
if x2=s[13]
then writeln('Right')
else begin
s[13]:=x2;
writeln(s);
end;
end. -
02008-12-06 16:29:37@
program isbn;
var s,i,j,z,b1,b2,v:integer;
m,s1,a1,b:string;
a:char;
begin
readln(m);
j:=1;
z:=0;
a1:=copy(m,13,1);
val(a1,b1,v);
for i:=1 to 12 do
begin
b:=copy(m,i,1);
if (b='1') or (b='0') or (b='2') or (b='3') or (b='4')or (b='5')or
(b='6')or (b='7')or (b='8')or (b='9') then begin
val(b,b2,v);
z:=b2*j+z; inc(j);
end;end;
delete(m,13,1);
s:=z mod 11; str(s,s1);
if s=10 then s1:='X';
if s1=a1 then write('Right') else write(m,s1);
readln;
end.
我的比较短,楼下的 -
02008-12-06 16:28:28@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0msvar st:string;
i,s,t:integer;
ch:char;
begin
t:=1;
readln(st);
s:=0;
for i:= 1 to 12 do
if ( ord(st[i]) - 48 in [0..9] ) then begin s:= s + (ord(st[i])-48)*t ; inc(t); end;
s:= s mod 11;
if s = 10 then ch:='X'
else ch:= chr(s+48);
if ch = st[13] then writeln('Right')
else
begin
st[13]:=ch;
writeln(st);
end;
end.下面的真长
-
02008-12-06 12:43:09@
program ISBN(input,output);
var
re:string;
k:char;
i,j:integer;
a:array[1..9] of integer;
he:longint;
yan,shuyan:char;
yan1:integer;
zhen:integer;
begin
readln(re);
j:=2;
k:=re[1];
a[1]:=ord(k)-48;
for i:=3 to 5 do
begin
k:=re[i];
a[j]:=ord(k)-48;
j:=j+1;
end;
for i:=7 to 11 do
begin
k:=re[i];
a[j]:=ord(k)-48;
j:=j+1;
end;
yan:=re[13];
if yan='X' then yan1:=10
else yan1:=ord(yan)-48;
for i:=1 to 9 do
he:=he+a[i]*i;
zhen:=he mod 11;
if zhen=yan1 then begin writeln('Right'); halt; end;
if zhen10 then begin for i:=1 to 12 do write(re[i]); writeln(zhen); end
else if zhen=10 then begin for i:=1 to 12 do write(re[i]); writeln('X'); end;
end.
秒杀!
water -
02008-12-06 08:09:03@
注意大小写,应该就没问题了。