Tài nguyên dạy học

Hỗ trợ trực tuyến

  • (Võ Như Cảnh)
  • (Đoàn Minh Lộc)

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

1 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
  • Ảnh ngẫu nhiên

    IMG_20150530_154456.jpg IMG_20151119_160323.jpg IMG_20160306_184538.jpg IMG_20160306_190123.jpg IMG_20160306_184529.jpg IMG_20160317_092516.jpg IMG_20160317_092754.jpg IMG_20160317_102530.jpg IMG_1221.jpg IMG_1220.jpg IMG_1219.jpg IMG_1218.jpg IMG_1217.jpg IMG_1204.jpg IMG_1203.jpg IMG_1201.jpg IMG_0963.jpg IMG_20150328_081711.jpg IMG_20150328_094839.jpg IMG_20150328_081351.jpg

    Chào mừng quý vị đến với Thư Viện trực tuyến Phòng GD&ĐT Huyện Hướng Hóa.

    Quý vị chưa đăng nhập hoặc chưa đăng ký làm thành viên, vì vậy chưa thể tải được các tư liệu của Thư viện về máy tính của mình.
    Nếu đã đăng ký rồi, quý vị có thể đăng nhập ở ngay ô bên phải.

    100 den tin hoc

    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:
    Người gửi: Lê Phước Hoà (trang riêng)
    Ngày gửi: 13h:37' 10-10-2010
    Dung lượng: 3.9 MB
    Số lượt tải: 84
    Số lượt thích: 0 người

    

    
    
    



    100 đề Toán Tin
    Tin học & Nhà trường
    Phần 1: ĐỀ BÀI


    Bài 1/1999 - Tổ chức tham quan
    (Dành cho học sinh THCS)
    Trong đợt tổ chức đi tham quan danh lam thắng cảnh của thành phố Hồ Chí Minh, Ban tổ chức hội thi Tin học trẻ tổ chức cho N đoàn ( đánh từ số 1 đến N) mỗi đoàn đi thăm quan một địa điểm khác nhau. Đoàn thứ i đi thăm địa điểm ở cách Khách sạn Hoàng Đế di km (i=1,2,...., N). Hội thi có M xe taxi đánh số từ 1 đến M (M(N) để phục vụ việc đưa các đoàn đi thăm quan. Xe thứ j có mức tiêu thụ xăng là vj đơn vị thể tích/km.
    Yêu cầu: Hãy chọn N xe để phục vụ việc đưa các đoàn đi thăm quan, mỗi xe chỉ phục vụ một đoàn, sao cho tổng chi phí xăng cần sử dụng là ít nhất.
    Dữ liệu: File văn bản P2.INP:
    - Dòng đầu tiên chứa hai số nguyên dương N, M (N(M(200);
    - Dòng thứ hai chứa các số nguyên dương d1, d2, ..., dN;
    - Dòng thứ ba chứa các số nguyên dương v1, v2, ..., vM.
    - Các số trên cùng một dòng được ghi khác nhau bởi dấu trắng.
    Kết quả: Ghi ra file văn bản P2.OUT:
    - Dòng đầu tiên chứa tổng lượng xăng dầu cần dùng cho việc đưa các đoàn đi thăm quan (không tính lượt về);
    - Dòng thứ i trong số N dòng tiếp theo ghi chỉ số xe phục vụ đoàn i (i=1, 2, ..., N).

    Ví dụ:
    P2.INP
    
    P2.OUT
    
    3 4
    7 5 9
    17 13 15 10
    
    256
    2
    3
    4
    
    Bài giải
    Program bai1;
    uses crt;
    const fi = `P2.inp`;
    fo = `P2.out`;
    type _type=array[1..2] of integer;
    mang=array[1..200] of _type;

    var f:text;
    d,v:mang;
    m,n:byte;

    procedure input;
    var i:byte;
    begin
    assign(f,fi);
    reset(f);
    readln(f,n,m);
    for i:=1 to n do
    begin
    read(f,d[i,1]);
    d[i,2]:=i;
    end;
    readln(f);
    for i:=1 to m do
    begin
    read(f,v[i,1]);
    v[i,2]:=i;
    end;
    close(f);
    end;

    procedure sapxeptang(var m:mang;n:byte);
    var d:_type;
    i,j:byte;
    begin
    for i:=1 to n-1 do
    for j:=i+1 to n do
    if m[j,1]m[i,1] then
    begin
    d:=m[j];
    m[j]:=m[i];
    m[i]:=d;
    end;
    end;

    var i:byte;
    tong:integer;
    begin
    input;
    sapxeptang(d,n);
    sapxeptang(v,m);
    tong:=0;
    for i:=1 to n do tong:=tong+v[n-i+1,1]*d[i,1];
    for i:=1 to n do v[i,1]:=d[n-i+1,2];
    xapxeptang(v,n);
    assign(f,fo);
    rewrite(f);
    writeln(f,tong);
    for i:=1 to n do writeln(f,v[i,2]);
    close(f);
    end.

    Nhận xét: Chương trình trên sẽ chạy chậm nếu chúng ta mở rộng bài toán (chẳng hạn n <= m <= 8000). Sau đây là cách giải khác:

    const
    Inp = `P2.INP`;
    Out = `P2.OUT`;
    var
    n, m: Integer;
    Val, Pos: array[1..2, 1..8000] of Integer;
    procedure ReadInput;
    var
    i: Integer;
    hf: Text;
    begin
    Assign(hf, Inp);
    Reset(hf);
    Readln(hf, n, m);
    for i := 1 to n do Read(hf, Val[1,
     
    Gửi ý kiến