Thứ Ba, 9 tháng 7, 2019

Số âm lớn nhất SOAM

(Tuyến sinh phổ thông năng khiếu 2007)
Yêu cầu: Hãy tìm số âm lớn nhất X trong dãy.Cho một dãy gồm N số nguyên a1, a2, …, aN, mỗi số có giá trị tuyệt đối không vượt quá 105.
Dữ liệu
· Dòng đầu tiên chứa số nguyên dương N (1≤ N ≤ 105).
· N dòng tiếp theo, dòng thứ i chứa số ai.
Kết quả: Ghi một dòng duy nhất số X tìm được. Trong trường hợp không có lời giải, ghi ra số 0.
Input Output
5              -4
-4
3
2
-5
7

3 nhận xét:

  1. program p;
    uses crt;
    var a:array[1..100] of integer;
    n,i,max:integer;
    begin
    clrscr;
    readln(n);
    for i:=1 to n do readln(a[i]);
    if a[i]<0 then max:=a[i];
    for i:=1 to n do
    if (a[i]<0) and (a[i]>max) then max:=a[i];
    write(max);
    readln;
    end.

    Trả lờiXóa
  2. C2:
    program p;
    uses crt;
    var a,t:array[1..100] of integer;
    n,i,max,j:integer;
    begin
    clrscr; j:=0;
    readln(n);
    for i:=1 to n do readln(a[i]);
    for i:=1 to n do
    if a[i]<0 then
    begin
    j:=j+1;
    t[j]:=t[j]+a[i];
    end;
    for i:=1 to n do
    max:=t[1];
    for i:=1 to j do
    if t[j]>max then max:=t[j];
    write(max);
    readln;
    end.

    Trả lờiXóa
  3. Uses crt;
    Var n,x,i:longint;
    f:array[-100000..100000] of boolean;
    test:boolean;
    Begin
    readln(n);
    For i:=1 to n do
    Begin
    readln(x);
    f[x]:=true;
    end;
    If test=false then Write('0') else For i:=0 downto -1000000 do
    If f[i]=true then Begin Write(i); break; end;
    readln;
    end.

    Trả lờiXóa

Dùng nick gmail để bình luận. Nếu lần đầu tiên bạn làm điều này thì hệ thống sẽ chuyển bạn sang trang blogger và hỏi bạn chọn tên hiển thị là gì. Bạn hãy nhập tên hiển thị rồi ok là được. Những lần bình luận sau hệ thống sẽ không hỏi nữa. Cảm ơn!

Bài được xem nhiều nhất