KIỂM TRA



Bài 1.            Kiểm tra tam giác KTTG (CB)

Mẹ Bi cho Bi một số que gỗ và đố Bi chọn được 3 que để xếp thành một hình tam giác. Bi chỉ biết độ dài 3 que gỗ mình sẽ lấy chứ không được xếp thử trước.
Yêu cầu: hãy giúp bé Bi kiểm tra xem 3 que gỗ đã lấy có xếp được thành tam giác hay không?
Input (kttg.inp): gồm một dòng ghi lần lượt 3 số nguyên là độ độ dài 3 que gỗ. Mỗi số cách nhau một kí tự trắng
Output (kttg.out): Ghi Yes nếu được ngược lại ghi no
Ví dụ:
Input
Output
Giải thích
3 4 5
yes

2 2 5
no


Bài 2:

Cho 2 số nguyên dương m và n (0<m<n<=106)
Hãy viết chương trình đếm chữ số 0 nằm trong đoạn mèn
Input (so0.inp): gồm một dòng ghi 2 số nguyên m và n
Output (so0.out): gồm một dòng ghi số lượng chữ số 0

Input
output
100 103
5

Bài 3: Truy tìm tội phạm

Tý và Tèo là thành viên của tổ chức mật thám ABC đang theo dõi sự di chuyển của một tổ chức tội phạm. Theo một nguồn tin dấu tên cho biết các tên tội phạm thuộc tổ chức này đang tìm cách chạy trốn khỏi địa phương và hiện đang ở sân bay để làm thủ tục xuất cảnh.
Cục tình báo  gửi cho Tý và Tèo một thông tin rất quan trọng: tên của mỗi tên tội phạm này đều có chuỗi "ABC". Bằng mối quan hệ của mình, Tý và Tèo có được một danh sách gồm N hành khách đang chuẩn bị bay.
Viết chương trình giúp Tý và Tèo giữ lại các tên tội phạm nguy hiểm này.
Input (tttp.inp);
·        Dòng1: Ghi một số nguyên N (1 N ≤ 10)
·        N dòng tiếp theo, mỗi dòng ghi tên của một hành khách. Tên của hành khách không quá 15 ký tự bao gồm các chữ cái từ “ A ” đến “ Z ”, chữ số từ “ 0 ” đến “ 9 ” và dấu “ ­ “
Output (tttp.out)
Mộtdòng duy nhất ghi thứ tự của tên tội phạm trong danh sách, nếu không có tên tội phạm nào trong danh sách thì in ra “GO”
ví dụ:
Input
Output
1
N­ABC1
1

4
9A­USKOK
I­NTERPOL
G­MI6
RF­KGB1
GO

5
47­ABC
BOND­007
RB­ABC18
MARICA­13
13A­ABCLL
1 3 5











Bài 6: Xâu đối xứng XAU

Xâu đối xứng là xâu có các ký tự giống nhau và đối xứng với nhau qua điểm giữa xâu. Cho trước N xâu. Hãy tìm các xâu đối xứng.
Input (xau.inp)
-Dòng đầu tiên chứa số N (1 ≤ N ≤ 20000)
-N dòng tiếp theo chứa các xâu ký tự, mỗi xâu nằm trên một dòng và có độ dài không qua 255
 ký tự
Output (xau.out)
-Dòng đầu tiên ghi số lượng các xâu đối xứng
-Các dòng sau ghi thứ tự xâu đối xứng
ví dụ:


Input
Output
4
aba
AcCA
uVkKKkVu
deged
3
1
3
4




Bài 7: Taxi
Sau giờ học n nhóm học sinh quyết định đến thăm Bờm để mừng sinh nhật cậu ấy. Biết rằng nhóm thứ i có si (1 ≤ si ≤ 4) bạn, và họ muốn đi đến nhà Bờm cùng với nhau. Họ quyết định đến đó bằng taxi. Mỗi chiếc xe có thể mang nhiều nhất là bốn hành khách. Hãy tính số lượng tối thiểu xe taxi bọn trẻ cần nếu tất cả các thành viên của cùng một nhóm phải đi cùng xe taxi (nhưng một taxi có thể có nhiều hơn một nhóm)?
Input
·       Dòng đầu tiên chứa số nguyên n (1 ≤ n ≤ 105) - số lượng các nhóm học sinh.
·       Dòng thứ hai chứa một chuỗi các số nguyên s1, s2, ..., sn (1 ≤ si ≤ 4). Các số nguyên được phân cách bởi một không gian, si là số lượng trẻ em trong nhóm thứ i.
Output: In số duy nhất - số lượng taxi tối thiểu cần thiết để chở tất cả.
Ví dụ (3 ví dụ)
Input
Output

5
1 2 4 3 3
4

Có nhiều cách khác để sắp xếp các nhóm thành bốn xe ô tô. Đây là một cách
·        nhóm thứ ba (có bốn người),
·        nhóm thứ tư (có ba người),
·        nhóm thứ năm (có ba người),
·        nhóm đầu tiên và nhóm thứ hai (bao gồm một người và hai người).
8
2 3 4 4 2 1 3 1
5


10
2 3 4 4 2 3 3 3 1 2
8



'

Bài 8:
Cho 2 xâu s1 và s2
Hãy tìm những chữ số có mặt ở cả 2 xâu
input (sochung.inp): gồm 2 dòng ghi hai xâu s1, s2. Mỗi xâu không quá 255 kí tự
output (sochung.inp): ghi những số có mặt ở cả 2 xâu. Mỗi số cách nhau 1 kí tự trắng
ví dụ:

Input
Output
k7fxl82t4a6mH
964HKx7Jm6
4 6 7


6 nhận xét:

  1. Nhận xét này đã bị tác giả xóa.

    Trả lờiXóa
  2. Bài 1:
    const
    nhap='ngto.inp';
    xuat='ngto.outp';
    var
    n,i,j,d:longint;
    begin
    assign(input,nhap);reset(input);
    assign(output,xuat);rewrite(output);
    readln(n);
    for i:=1 to n do
    begin
    d:=0;
    for j:=1 to i do
    if (i mod j =0) then
    d:=d+1;
    if d=2 then write(i,' ');
    end;
    close(input);close(output);
    end.

    Trả lờiXóa
  3. Bài 2:
    const
    nhap='fibo.inp';
    xuat='fibo.outp';
    var
    n,i,d:longint;
    x:array[1..100] of longint;
    begin
    assign(input,nhap);reset(input);
    assign(output,xuat);rewrite(output);
    readln(n);
    d:=0;
    x[1]:=0;
    x[2]:=1;
    for i:=3 to n do
    x[i]:=x[i-1]+x[i-2];
    d:=d+x[i];
    write(d);
    close(input);close(output);
    end.

    Trả lờiXóa
  4. Bài3:
    const
    nhap='xedien.inp';
    xuat='xedien.outp';
    var
    n,c,d,i:longint;
    a,b:array [1..100] of longint;
    begin
    assign(input,nhap);reset(input);
    assign(output,xuat);rewrite(output);
    readln(n);
    d:=0;
    readln(a[1],b[1]);
    for i:=2 to n do
    begin
    readln(a[i],b[i]);
    b[i]:=b[i-1]-a[i]+b[i];
    if b[i]>d then d:=b[i];
    end;
    write(d);
    close(input);close(output);
    end.

    Trả lờiXóa
  5. bai5 :
    const
    nhap='doco.inp';
    xuat='doco.outp';
    var
    n,d,i,j:longint;
    a:array[1..100] of longint;
    begin
    assign(input,nhap);reset(input);
    assign(output,xuat);rewrite(output);
    readln(n);
    d:=2;
    writeln(2);
    for i:=1 to n-1 do
    begin
    readln(a[i]);
    if a[i]> d then d:=a[i]+1
    else d:=d+1;
    writeln(d);
    end;
    close(input);close(output);
    end.

    Trả lờiXóa