Luyện tập STL - Sử dụng map, set, vector, pair

Đếm số lượng phần tử khác nhau

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

Cho một dãy số nguyên A gồm N phần tử. Hãy đếm xem trong dãy có bao nhiêu giá trị khác nhau.

  • Input:
    • Dòng đầu tiên là số nguyên N ~(1 \le N \le 2 \cdot 10^5)~.
    • Dòng thứ hai gồm N số nguyên ~A_i~ ~(|A_i| \le 10^9)~.
  • Output: Một số nguyên duy nhất là số lượng giá trị khác nhau.

Ví dụ:

  • Input:
    6
    1 5 2 5 1 3
    
  • Output:
    4
    

Xếp hạng vận động viên

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

N vận động viên. Mỗi người có một ~id~ (số nguyên) và điểm số (số nguyên). Hãy sắp xếp các vận động viên theo thứ tự: Điểm số giảm dần, nếu điểm bằng nhau thì ~id~ nhỏ hơn xếp trước.

  • Input:
    • Dòng đầu chứa N (~1 \le N \le 10^5~).
    • N dòng sau, mỗi dòng chứa ~id~ và ~point~ (~1 \le id, point \le 10^9~).
  • Output: N dòng là ~id~ và ~point~ sau khi sắp xếp.
    • Ví dụ:
  • Input:
    5
    101 80
    102 90
    103 80
    104 95
    105 90
    
  • Output:
    104 95
    102 90
    105 90
    101 80
    103 80
    

Từ điển tần suất

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

Cho một đoạn văn gồm N từ. Hãy liệt kê các từ khác nhau xuất hiện trong đoạn văn và số lần xuất hiện của chúng theo thứ tự từ điển tăng dần của các từ.

  • Input:
    • Dòng đầu là N (~1 \le N \le 5 \cdot 10^4~).
    • N dòng tiếp theo, mỗi dòng là một từ (chỉ gồm chữ cái thường, độ dài không quá 20).
  • Output: Mỗi dòng gồm một từ và tần suất của nó.

Ví dụ:

  • Input:
    7
    apple
    banana
    apple
    orange
    banana
    apple
    kiwi
    
  • Output:
    apple 3
    banana 2
    kiwi 1
    orange 1
    

Cặp số có tổng bằng S

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

Cho mảng A gồm N số nguyên và một số nguyên S. Hãy đếm số lượng cặp chỉ số ~(i, j)~ sao cho ~i < j~ và ~A[i] + A[j] = S~.

  • Input:
    • Dòng 1: NS (~1 \le N \le 10^5, |S| \le 10^9~).
    • Dòng 2: N số nguyên ~A_i (|A_i| \le 10^9)~.
  • Output: Một số nguyên duy nhất là số lượng cặp thỏa mãn.
    • Ví dụ:
  • Input:
    5 8
    1 3 5 5 7
    
  • Output:
    3
    

Số nhỏ nhất còn thiếu (MEX)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

Cho mảng AN phần tử. Với mỗi vị trí i từ 1 đến N, hãy tìm số nguyên dương nhỏ nhất không xuất hiện trong tập hợp các phần tử từ A[1] đến A[i].

  • Input:
    • Dòng 1: N ~(1 \le N \le 10^5)~
    • Dòng 2: N số nguyên ~A_i~ (~1 \le A_i \le 10^9~).
  • Output: N số nguyên tương ứng với kết quả tại mỗi bước, cách nhau bởi khoảng trắng.

Ví dụ:

  • Input:
    5
    1 2 4 1 3
    
  • Output:
    2 3 3 3 5