p1699.pas
来自「高手写的所有acm例程 在acm.zju.edu.cn 上的题目的例程」· PAS 代码 · 共 65 行
PAS
65 行
{$R-,I-,Q-,S-}
PROGRAM p1699;
TYPE
TData = array[0..4] of String;
Tchoose = array[0..199] of String;
VAR
Data : TData;
choose : Tchoose;
n , Long , T , i : Integer;
Find : Boolean;
step : Integer;
FUNCTION Init : Boolean;
var
i : Integer;
begin
readln ( n , Long , T );
if n = 0 then exit ( false );
readln ( Data [0] );
i := 1;
for i := 1 to n - 1 do Data [i] := Data [0];
for i := 0 to T - 1 do readln ( choose [i] );
exit ( true );
end;
FUNCTION check ( v : Integer ) : Boolean;
var
i , j , temp : Integer;
begin
i := v mod n;
for j := 1 to length ( choose [v] ) do
if ( choose [v] [j] <> ' ' ) then
begin
temp := pos ( choose [v] [j] , Data [i] );
if ( temp = 0 ) or ( temp = length ( Data [i] ) ) then exit ( true );
Delete ( Data [i] , 1 , temp );
end;
exit ( false );
end;
BEGIN
//assign ( input , 'p.in' );
//reset ( input );
step := 0;
while ( Init ) do
begin
inc ( step );
Find := false;
for i := 0 to T - 1 do
begin
if Check ( i ) then
begin
writeln ( 'Player ', i mod n + 1 , ' won after ', i + 1,' cards.');
Find := true;
break;
end;
if Find then break;
end;
if not Find then writeln ( 'No player won after ' , T ,' cards.');
end;
END.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?