CSES - Bubble Sort Rounds I | Số vòng Bubble Sort I

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1400 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Bubble sort là một thuật toán sắp xếp gồm nhiều vòng. Ở mỗi vòng, thuật toán quét mảng từ trái sang phải và hoán đổi mọi cặp phần tử kề nhau đang sai thứ tự.

Cho một mảng gồm \(n\) số nguyên, hãy tính số vòng bubble sort cần thiết để sắp xếp mảng.

Input

Dòng đầu tiên chứa một số nguyên \(n\): kích thước mảng.

Dòng tiếp theo chứa \(n\) số nguyên \(x_1,x_2,\dots,x_n\): các phần tử của mảng.

Output

In ra một số nguyên: số vòng.

Constraints

  • \(1 \le n \le 2 \cdot 10^5\)

  • \(1 \le x_i \le 10^9\)

Example

Test 1

Input
5
3 2 4 1 4
Output
3

Explanation

Bubble sort cần ba vòng để sắp xếp mảng này. Các phần tử của mảng sau mỗi vòng lần lượt là \([2,3,1,4,4]\), \([2,1,3,4,4]\), và \([1,2,3,4,4]\).

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.