Điều hướng chính

Nhắn tin NQ Coding

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập

Bài được chọn theo nhịp luyện tập của bạn, cùng mọi bài mới vừa lên.

Dễ

Đổi quà đêm trăng

100 điểm 100% AC 1 đã giải

staffagent

Tại hội đêm rằm, Nam có \(X\) điểm thưởng để đổi quà. Có \(N\) món quà, món thứ \(i\) có giá \(A_i\) điểm. Nam muốn đổi đúng hai món quà khác nhau (hai món ở hai vị trí khác nhau trong danh sách) sao cho tổng giá trị lớn nhất có thể nhưng không vượt quá \(X\).

In ra tổng giá trị đó. Nếu không có cặp nào có tổng không quá \(X\) (kể cả khi \(N = 1\)) thì in ra \(0\).

Input

  • Dòng đầu chứa hai số nguyên \(N\) và \(X\).
  • Dòng thứ hai chứa \(N\) số nguyên \(A_1, \dots, A_N\).

Output

Một số nguyên là tổng giá trị lớn nhất không vượt quá \(X\) của hai món quà khác nhau, hoặc \(0\) nếu không thể.

Constraints

  • \(1 \le N \le 100001\)
  • \(1 \le X \le 10^9\)
  • \(1 \le A_i \le 10^9\)

Sample Input

7 18
6 11 3 9 14 5 2

Sample Output

17

Explanation

Các cặp tốt nhất là \(14 + 3 = 17\) hoặc \(11 + 6 = 17\); không có cặp nào có tổng bằng \(18\).

Dễ

Phân tích hàm băm

100 điểm 0% AC 0 đã giải

root

Sau cuộc tấn công tàn khốc của các cỗ máy, dự án YoRHa mới quyết định triển khai một hệ thống an ninh tối tân. Hệ thống này sử dụng các thuật toán mã hóa tiên tiến để đảm bảo thông tin quan trọng luôn được bảo mật. Trọng tâm của hệ thống an ninh này là một cơ chế băm độc đáo, trong đó mỗi mẩu dữ liệu được biểu diễn bằng phép toán toán học \(x^y \pmod{p}\), với \(p\) là một số nguyên tố. Hệ thống này biến đổi mọi đầu vào thành một "chữ ký", một chuỗi dường như ngẫu nhiên mà chỉ các máy chủ của YoRHa mới có thể giải mã.

Tuy nhiên, khi cuộc chiến với các cỗ máy kéo dài, các nhà điều hành bắt đầu lo ngại. Điều gì sẽ xảy ra nếu nhiều mẩu thông tin khác nhau, khi được xử lý bởi thuật toán băm này, lại tạo ra cùng một chữ ký? Điều này có thể dẫn đến một thất bại thảm khốc trong hệ thống an ninh, khi dữ liệu quan trọng bị ghi đè hoặc mất do các vụ "va chạm" trong hàm băm. Để ngăn chặn điều này, nhà điều hành 21O được giao một nhiệm vụ quan trọng: tính toán xem có bao nhiêu đầu vào khác nhau có thể băm thành cùng một chữ ký, cho mọi kết quả đầu ra có thể.

Với mỗi \(k = 1, 2, 3, \ldots, p-1\), nhà điều hành phải phân tích có bao nhiêu cặp số nguyên \((a, b)\) với \(1 \le a, b \le p-1\) thỏa mãn \(a^b \equiv k \pmod{p}\). Bằng cách xác định có bao nhiêu tổ hợp khác nhau tạo ra cùng một kết quả băm, họ có thể đánh giá rủi ro va chạm và điều chỉnh các giao thức an ninh cho phù hợp. Cuộc phân tích này trở thành một cuộc chạy đua với thời gian, vì sự toàn vẹn của hệ thống liên lạc và lưu trữ dữ liệu của YoRHa phụ thuộc vào việc thực hiện thành công nhiệm vụ này. Vận mệnh của cuộc chiến có thể phụ thuộc vào khả năng của nhà điều hành trong việc đảm bảo hệ thống an ninh luôn bất khả xâm phạm.

Input

  • Một số nguyên duy nhất \(p\) (\(2 \le p < 100,000\)). Đảm bảo rằng \(p\) là một số nguyên tố.

Output

  • Một dòng duy nhất chứa \(p-1\) số nguyên. Số thứ \(k\) là số cặp \((a, b)\) thỏa mãn \(a^b \equiv k \pmod{p}\).

Example

Test 1

Input
3
Output
3 1 
Note
  • Với \(k=1\): Có 3 cặp số \((a, b)\) thỏa mãn \(a^b \equiv 1 \pmod{3}\): \((1, 1), (1, 2), (2, 2)\).
  • Với \(k=2\): Có 1 cặp số \((a, b)\) thỏa mãn \(a^b \equiv 2 \pmod{3}\): \((2, 1)\).

Test 2

Input
13
Output
40 4 16 8 10 4 4 10 16 8 4 20 

Scoring

  • Subtask 1 (30 điểm): \(p \le 500\).
  • Subtask 2 (30 điểm): \(p \le 10000\).
  • Subtask 3 (40 điểm): Không có ràng buộc gì thêm.
Dễ

Tưới nước đồng cỏ

100 điểm 0% AC 0 đã giải

root

Nông dân John quyết định mang nước tới cho \(N\) đồng cỏ của mình, để thuận tiện ta đánh số các đồng cỏ từ \(1\) đến \(N\). Để tưới nước cho \(1\) đồng cỏ John có thể chọn \(2\) cách, \(1\) là đào ở đồng cỏ đó \(1\) cái giếng hoặc lắp ống nối dẫn nước từ những đồng cỏ trước đó đã có nước tới.

Để đào một cái giếng ở đồng cỏ \(i\) cần \(1\) số tiền là \(W_{i}\). Lắp ống dẫn nước nối \(2\) đồng cỏ \(i\) và \(j\) cần một số tiền là \(P_{ij}\).

Tính xem nông dân John phải chi ít nhất bao nhiêu tiền để tất cả các đồng cỏ đều có nước.

Input

  • Dòng đầu tiên chứa một số nguyên duy nhất \(N\) \((1 \leq N \leq 300)\) - số lượng đồng cỏ.

  • \(N\) dòng tiếp theo, dòng thứ \(i\) chứa 1 số nguyên duy nhất \(W_i\) \((1 \leq W_i \leq 100,000)\).

  • \(N\) dòng tiếp theo, dòng thứ \(i\) chứa \(N\) số nguyên cách nhau bởi dấu cách, số thứ \(j\) là \(P_{ij}\) \((1 \leq P_{ij} \leq 10^{5}, P_{ij} = P_{ji}, P_{ii} = 0)\).

Output

  • Một số nguyên duy nhất là chi phí tối thiểu để cung cấp nước cho tất cả các đồng cỏ.

Example

Test 1

Input
4
5
4
4
3
0 2 2 2
2 0 3 3
2 3 0 4
2 3 4 0
Output
9
Note

Có \(4\) đồng cỏ. Mất \(5\) tiền để đào \(1\) cái giếng ở đồng cỏ \(1\), \(4\) tiền để đào ở đồng cỏ \(2\), \(3\) và \(3\) tiền để đào ở đồng cỏ \(4\). Các ống dẫn nước tốn \(2, 3\) và \(4\) tiền tùy thuộc vào nó nối đồng cỏ nào với nhau.

    Nông dân John có thể đào $1$ cái giếng ở đồng cỏ thứ $4$ và lắp ống dẫn nối đồng cỏ $1$ với tất cả $3$ đồng cỏ còn lại, chi phí tổng cộng là $3 + 2 + 2 + 2 = 9$.
Dễ

Tô màu bóng

100 điểm 0% AC 0 đã giải

root

Ban tổ chức có \(N\) quả bóng được xếp thành một hàng từ trái sang phải và đánh số từ \(1\) đến \(N\).

Quy trình tô màu được thực hiện như sau:

  • Đầu tiên, tô màu đỏ lên các quả bóng có số thứ tự chia hết cho \(a\).
  • Sau đó, tô màu xanh lên các quả bóng có số thứ tự chia hết cho \(b\).
  • Cuối cùng, các quả bóng còn lại được tô màu vàng.

Lưu ý rằng nếu một quả bóng được tô màu ở bước sau thì màu trước đó (nếu có) sẽ bị ghi đè.

Yêu cầu:
Hãy tính số lượng quả bóng được tô màu vàng sau khi hoàn thành các bước trên.

\InputFile

Gồm ba số nguyên dương \(N, a, b\) \((a, b \le N)\), mỗi số trên một dòng.

\OutputFile

In ra một số nguyên duy nhất --- số lượng quả bóng được tô màu vàng.

\Scoring

  • \(50\%\) số test: \(N \le 100\).
  • \(50\%\) số test còn lại: \(100 < N \le 10^8\), \(b = a + 1\).

Example

Test 1

Input
10
2
5
Output
4

Test 2

Input
10
1
2
Output
0
Xem thêm