var a,b:ansistring; m,n:longint; s:array[0..2000111,0..30] of longint; procedure enter; begin readln(a); readln(b); m:=length(a);n:=length(b); end; function max(x,y:longint):longint; begin if x>y then exit(x) else exit(y); end; function min(x,y:longint):longint; begin if x<y then exit(x) else exit(y); end; procedure solve; var i,j,u,v,c:longint; res:int64; begin //chuan bi mang cong don for i:=1 to m do begin for j:=0 to 25 do s[i,j]:=s[i-1,j]; inc(s[i,ord(a[i])-ord('a')]); end; //tinh ket qua res:=0; //bien u va v la doan ki tu o xau a //duoc so sanh voi ki tu b[i] for i:=1 to n do begin u:=max(1,i+m-n); v:=min(i,m); c:=ord(b[i])-ord('a'); inc(res,s[v,c]-s[u-1,c]); end; writeln(res); end; begin assign(input,'sim.inp');reset(input); assign(output,'sim.out');rewrite(output); enter; solve; close(input);close(output); end.
* Chuyên dạy lập trình ONLINE cho học sinh THCS, THPT *.
Mọi giao lưu, trao đổi, xin liên hệ: Lê Quang Vinh - zalo: 037.803.8755.
Page: Lớp học Code Sky
Group FB1: Ôn thi HSG9 - THTB - TS10 chuyên tin
Group FB2: Học Scratch - Ôn thi Tin học trẻ bảng A
Thứ Sáu, 13 tháng 5, 2022
SIM PASCAL
Đăng ký:
Đăng Nhận xét (Atom)
Không có nhận xét nào:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.