Trang chủ Tin Học Lớp 9 Nhập vào từ bàn phím số nguyên n và một...

Nhập vào từ bàn phím số nguyên n và một dãy số gồm n phần tử. Hãy tìm số lớn thứ hai trong dãy đã cho. câu hỏi 4826733 - hoctapsgk.com

Câu hỏi :

Nhập vào từ bàn phím số nguyên n và một dãy số gồm n phần tử. Hãy tìm số lớn thứ hai trong dãy đã cho.

Lời giải 1 :

#include <bits/stdc++.h>
#define ll long long
using namespace std;
ll n, a[1000005], MAX, MAX1, i;
int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);//n
    cout.tie(0);
    cin >> n;
    for (i = 1; i <= n; i++)
    {
        cin >> a[i];
        MAX = max(a[i], MAX);
    }
    for (i = 1; i <= n; i++)
    {
        if (a[i] < MAX && a[i] > MAX1)
        {
            MAX1 = a[i];
        }
    }
    cout << MAX1;
    return 0;
}

Thảo luận

-- Em binh luan pascal
-- uses crt; var a:array[1..10000] of longint; n,i,MAX,MAX1:longint; begin clrscr; readln(n); for i:=1 to n do begin readln(a[i]); if a[i] > MAX then MAX:=a[i]; end; for i:=1 to n do begin if (a[i]<MAX) and (a[i]>MAX1) then MAX1:=a[i]; end; write(MAX1... xem thêm
-- Em cam on

Lời giải 2 :

Sắp xếp lại các vị trí trong mảng theo thứ tự tăng dần (nên dùng quik sort)

var a:array[1..100000009]of int64;
        n,i,j:longint;
procedure sort(l,r:longint);
var x,tmp:longint;
begin
        i:=l;j:=r;
        x:=a[(i+j) div 2];
        repeat
                while a[i]>x do inc(i);
                while a[j]<x do dec(j);
                if (i<=j) then
                begin
                        tmp:=a[i];
                        a[i]:=a[j];
                        a[j]:=tmp;
                        inc(i);dec(j);
                end;
        until i>j;
        if l<j then sort(l,j);
        if i<r then sort(i,r);
end;
begin
        readln(n);
        for i:=1 to n do read(a[i]);
        sort(1,n);
        for i:=1 to n do
        if a[1]=a[i] then continue
        else
        begin
                writeln(a[i]);exit;
        end;
        writeln(-1);
end.

Bạn có biết?

Tin học, tiếng Anh: informatics, tiếng Pháp: informatique, là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng (ảo). Với cách hiểu hiện nay, tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin.

Nguồn : Wikipedia - Bách khoa toàn thư

Tâm sự 9

Lớp 9 - Là năm cuối ở cấp trung học cơ sở, sắp phải bước vào một kì thi căng thẳng và sắp chia tay bạn bè, thầy cô và cả kì vọng của phụ huynh ngày càng lớn mang tên "Lên cấp 3". Thật là áp lực nhưng các em hãy cứ tự tin vào bản thân là sẻ vượt qua nhé!

Nguồn : ADMIN :))

Liên hệ hợp tác hoặc quảng cáo: gmail

Điều khoản dịch vụ

Copyright © 2021 HOCTAPSGK