fork download
  1. program scopa;
  2.  
  3. var
  4. line: ansistring;
  5. i,j, h, tot, number: longint;
  6. suit: char;
  7. numinmano, numintable: array[1..4] of integer;
  8. suinmano, suintable: array[1..4] of char;
  9. setteinmano, setteintable: array[1..4] of char;
  10.  
  11. procedure readcard(var s: ansistring; var number: longint; var suit: char);
  12. begin
  13. if (s[1] = '1') and (s[2] = '0') then
  14. begin
  15. number := 10;
  16. suit := s[3];
  17. s := copy(s, 5, length(s));
  18. end else begin
  19. number := ord(s[1]) - ord('0');
  20. suit := s[2];
  21. s := copy(s, 4, length(s));
  22. end;
  23. end;
  24.  
  25.  
  26.  
  27. begin
  28. {
  29.   uncomment the following lines if you want to read/write from files
  30.   assign(input, 'input.txt'); reset(input);
  31.   assign(output, 'output.txt'); rewrite(output);
  32. }
  33. for i:=1 to 4 do begin setteinmano[i]:='0'; setteintable[i]:='0'; end;
  34. readln(line);
  35. h:=1;
  36. for i:=1 to 3 do
  37. begin
  38. { card in hand }
  39. readcard(line, number, suit);
  40. writeln (line);
  41. numinmano[i]:=number;
  42. suinmano[i]:=suit;
  43. if number=7 then begin setteinmano[h]:= suit; h:=h+1; end;
  44.  
  45. { use number and suit }
  46. end;
  47.  
  48. readln(line);
  49. tot:=0; h:=0;
  50. for i:=1 to 4 do
  51. begin
  52. { card on table }
  53. readcard(line, number, suit);
  54. writeln(line);
  55. numintable[i]:=number;
  56. suintable[i]:=suit;
  57. tot:=tot+number;
  58. if number=7 then begin setteintable[h]:= suit; h:=h+1; end;
  59. { use number and suit }
  60. end;
  61. for i:=1 to 4 do write ('7',setteinmano[i]); end.
  62. for i:=1 to 3 do if numinmano[i]=tot then write (numinmano[i],suinmano[i],' ');
  63. for j:=1 to 4 do write(numintable[j],suintable[j],' '); writeln;
  64.  
  65.  
  66. end.
  67.  
  68.  
Success #stdin #stdout 0s 5280KB
stdin
5G 7S 8S
2G 3C 1S 2C
stdout
7S 8S
8S

3C 1S 2C
1S 2C
2C

7S707070