Liên kết tài nguyên

Liên kết website

Thành viên trực tuyến

3 khách và 0 thành viên

Thống kê

  • truy cập   (chi tiết)
    trong hôm nay
  • lượt xem
    trong hôm nay
  • thành viên
  • Điều tra ý kiến

    Bạn nhận thấy trang web này như thế nào?
    Rất hay
    Đẹp
    Bình thường
    Không hay
    Ý kiến khác

    Chào mừng quý thầy cô và các bạn đến với website Phan Tuấn Hải.

    Lên đầu trang Lên đầu trang

    Đề thi và đáp án HSG lớp 12 (lần 1) môn Tin học tỉnh Ninh Bình 2012-2013

    Wait
    • Begin_button
    • Prev_button
    • Play_button
    • Stop_button
    • Next_button
    • End_button
    • 0 / 0
    • Loading_status
    Nhấn vào đây để tải về
    Báo tài liệu có sai sót
    Nhắn tin cho tác giả
    (Tài liệu chưa được thẩm định)
    Nguồn: st
    Người gửi: Phan Tuấn Hải (trang riêng)
    Ngày gửi: 20h:28' 06-04-2016
    Dung lượng: 292.1 KB
    Số lượt tải: 17
    Số lượt thích: 0 người
    HƯỚNG DẪN CHẤM THI CHỌN HỌC SINH GIỎI LỚP 12 THPT
    Kỳ thi thứ nhất - Năm học 2012 – 2013
    MÔN: TIN HỌC
    Chấm bằng chương trình tự động AMM2:
    Câu 1: 10 test, mỗi test đúng cho 0,5 điểm.
    Câu2: 10 test, mỗi test đúng cho 0,5 điểm.
    Câu3: 10 test, mỗi test đúng cho 0,5 điểm.
    Câu 4: 10 test, mỗi test đúng cho 0,5 điểm.

    Bài 1
    const
    finp = `TOUR.INP`;
    fout = `TOUR.OUT`;
    var
    n, m: Integer;
    Val, Pos: array[1..2, 1..8000] of Integer;
    {=================================================}
    procedure ReadInput;
    var
    i: Integer;
    hf: Text;
    begin
    Assign(hf, finp);
    Reset(hf);
    Readln(hf, n, m);
    for i := 1 to n do Read(hf, Val[1, i]);
    Readln(hf);
    for i := 1 to m do Read(hf, Val[2, i]);
    Close(hf);
    for i := 1 to m do
    begin
    Pos[1, i] := i;
    Pos[2, i] := i;
    end;
    end;
    {=================================================}
    procedure QuickSort(t, l, r: Integer);
    var
    x, tg, i, j: Integer;
    begin
    x := Val[t, (l + r) div 2];
    i := l; j := r;
    repeat
    while Val[t, i] < x do Inc(i);
    while Val[t, j] > x do Dec(j);
    if i <= j then
    begin
    Tg := Val[t, i]; Val[t, i] := Val[t, j]; Val[t, j] := Tg;
    Tg := Pos[t, i]; Pos[t, i] := Pos[t, j]; Pos[t, j] := Tg;
    Inc(i); Dec(j);
    end;
    until i > j;
    if i < r then QuickSort(t, i, r);
    if j > l then QuickSort(t, l, j);
    end;
    {=================================================}
    procedure WriteOutput;
    var
    i: Integer;
    Sum: LongInt;
    hf: Text;
    begin
    Sum := 0;
    for i := 1 to n do Inc(Sum, Val[1, n - i + 1] * Val[2, i]);
    for i := 1 to n do Val[1, Pos[1, n - i + 1]] := Pos[2, i];
    Assign(hf, fout);
    Rewrite(hf);
    Writeln(hf, Sum);
    for i := 1 to n do Writeln(hf, Val[1, i]);
    Close(hf);
    end;
    begin
    ReadInput;
    QuickSort(1, 1, n);
    QuickSort(2, 1, m);
    WriteOutput;
    end.

    Bài 2:
    const fi = `HAIVAN.INP`;
    fo = `HAIVAN.OUT`;
    nmax = 100005;
    Var v,r:array[1..nmax] of longint;
    vipham:array[1..nmax]of boolean;
    n,k,m:longint;
    procedure nhap;
    var f:text;
    i,j:longint;
    begin
    assign(f,fi);
    reset(f);
    readln(f,n);
    for i:=1 to n do read(f,v[i]);
    readln(f);
    for j:=1 to n do read(f,r[j]);
    close(f);
    end;
    procedure xuly;
    Var i,j:longint;
    f:text;
    begin
    k:=0;
    for i:=1 to n do
    if v[i]<>r[i] then inc(k);
    fillchar(vipham,sizeof(vipham),false);
    m:=0;
    j:=0;
    for i:=1 to n do
    if vipham[v[i]]=false then
    Repeat
    inc(j);
    if r[j]<>v[i] then
    begin
    inc(m);
    vipham[r[j]]:=true;
    end;
    Until r[j] = v[i];
    assign(f,fo);
    rewrite
     
    Gửi ý kiến

    ↓ CHÚ Ý: Bài giảng này được nén lại dưới dạng RAR và có thể chứa nhiều file. Hệ thống chỉ hiển thị 1 file trong số đó, đề nghị các thầy cô KIỂM TRA KỸ TRƯỚC KHI NHẬN XÉT  ↓