Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program project1;
- {$mode objfpc}{$H+}
- uses
- {$IFDEF UNIX}{$IFDEF UseCThreads}
- cthreads,
- {$ENDIF}{$ENDIF}
- Classes
- { you can add units after this };
- var
- inp,outp: text;
- x,y,i,z,raz: longint;
- r,s: integer;
- a,b,c: array[0..10000] of byte;
- flag1: boolean;
- k: char;
- begin
- assignfile(inp,'input.txt');
- assignfile(outp,'output.txt');
- rewrite(outp);
- reset(inp);
- flag1:=false;
- x:=0;
- y:=0;
- repeat
- inc(x);
- read(inp,k);
- a[x]:=ord(k)-48;
- until EOLn(inp);
- readln(inp);
- repeat
- inc(y);
- read(inp,k);
- b[y]:=ord(k)-48;
- until EOLn(inp);
- if x>=y then begin
- z:=x;
- raz:=x-y;
- r:=0;
- for i:=z downto 1 do begin
- if (i-raz>=1) then s:=r+a[i]+b[i-raz]
- else s:=r+a[i];
- c[i]:=s mod 10;
- r:=s div 10;
- end;
- end else begin
- z:=y;
- raz:=y-x;
- r:=0;
- for i:=z downto 1 do begin
- if (i-raz>=1) then s:=r+a[i-raz]+b[i]
- else s:=r+b[i];
- c[i]:=s mod 10;
- r:=s div 10;
- end;
- end;
- if (r>0) then write(outp,r);
- for i:=1 to z do write(outp,c[i]);
- closefile(outp);
- closefile(inp);
- end.
- Y
- program project1;
- {$mode objfpc}{$H+}
- uses
- {$IFDEF UNIX}{$IFDEF UseCThreads}
- cthreads,
- {$ENDIF}{$ENDIF}
- Classes
- { you can add units after this };
- var
- inp,outp: text;
- x,y,i,j,z,raz,r,s,d: longint;
- a,b: array[0..3000] of byte;
- c: array[0..6001] of longint;
- flag1: boolean;
- k: char;
- begin
- assignfile(inp,'input.txt');
- assignfile(outp,'output.txt');
- rewrite(outp);
- reset(inp);
- flag1:=false;
- x:=0;
- y:=0;
- repeat
- inc(x);
- read(inp,k);
- a[x]:=ord(k)-48;
- until EOLn(inp);
- readln(inp);
- repeat
- inc(y);
- read(inp,k);
- b[y]:=ord(k)-48;
- until EOLn(inp);
- for i:=0 to 6001 do c[i]:=0;
- for j:=0 to (y-1) do begin
- r:=0;
- for i:=0 to (x-1) do begin
- d:=6000-i-j;
- s:=a[x-i]*b[y-j]+r+c[d];
- c[d]:=s mod 10;
- r:=s div 10;
- end;
- c[d-1]+=r;
- end;
- r:=c[d-1] div 10;
- c[d-1]:=c[d-1] mod 10;
- i:=1;
- while (r>0) do begin
- inc(i);
- c[d-i]:=r mod 10;
- r:=r div 10;
- end;
- d:=-1;
- repeat
- inc(d);
- until c[d]<>0;
- for i:=d to 6000 do write(outp,c[i]);
- closefile(outp);
- closefile(inp);
- end.
- 1
- program project1;
- {$mode objfpc}{$H+}
- uses
- {$IFDEF UNIX}{$IFDEF UseCThreads}
- cthreads,
- {$ENDIF}{$ENDIF}
- Classes
- { you can add units after this };
- Var
- S: string;
- S1,S2: string[50];
- inp,outp: text;
- i,l: integer;
- Begin
- assignfile(inp,'input.txt');
- reset(inp);
- assignfile(outp,'output.txt');
- rewrite(outp);
- readln(inp,S);
- readln(inp,S1);
- readln(inp,S2);
- l:=length(S1);
- if not(pos(s1,s2)=0)or(s1='') then
- write(outp,'-1')
- else begin
- i:=pos(S1,S);
- while not(i=0) do
- begin
- delete(S,i,l);
- insert(S2,S,i);
- i:=pos(S1,S);
- end;
- write(outp,S);
- end;
- closefile(outp);
- closefile(inp);
- end.
- end.
- 2
- program project1;
- {$mode objfpc}{$H+}
- uses
- {$IFDEF UNIX}{$IFDEF UseCThreads}
- cthreads,
- {$ENDIF}{$ENDIF}
- Classes
- { you can add units after this };
- Var
- S: array[1..1000000] of char;
- inp,outp: text;
- k,i,j,n,l,p: longint;
- c: char;
- flag1: boolean;
- Begin
- assignfile(inp,'input.txt');
- //rewrite(inp);
- //writeln(inp,3);
- //writeln(inp,'A 10 20');
- //writeln(inp,'B 11 13');
- //writeln(inp,'Z 5 13');
- reset(inp);
- assignfile(outp,'output.txt');
- rewrite(outp);
- readln(inp,n);
- for k:=1 to 1000000 do s[k]:='Z';
- for k:=1 to n do begin
- readln(inp,c,i,j);
- for l:=i to j do s[l]:=c;
- end;
- l:=0;
- for c:='A' to 'Z' do begin
- flag1:=false;
- k:=0;
- repeat
- inc(k);
- if s[k]=c then flag1:=true;
- until (k=1000000)or(flag1);
- if flag1 then begin
- //write(c);
- inc(l);
- end;
- end;
- write(outp,l);
- write(l);
- closefile(outp);
- closefile(inp);
- end.
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement