Điều hướng chính

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ễ

Số nguyên tố 2

100 điểm 78% AC 13 đã giải

root

Bạn có một số nguyên dương \(N\). Nhiệm vụ của bạn là xuất ra tất cả các số nguyên tố từ \(1\) tới \(N\).

Input

  • Gồm một dòng duy nhất chứa số nguyên \(N\) (\(N \leq 10^6)\).

Output

  • Xuất ra tất cả các số nguyên tố từ \(1\) tới \(N\) trên cùng một dòng và cách nhau một dấu cách.

Example

Test 1

Input
10
Output
2 3 5 7 
Dễ

Số nguyên tố 10

100 điểm 29% AC 6 đã giải

root

Cho một dãy số \(A\) có \(N\) phần tử. Tìm số nguyên dương \(P\) nhỏ nhất thỏa mãn: \(P\) là số chính phương và \(P\) chia hết cho tất cả các phần tử của dãy số \(A\).

Yêu cầu: In ra phần dư của phép chia khi chia \(P\) cho \(10^9+7\)

Input

  • Dòng đầu tiên chứa số nguyên dương \(N\) là số lượng phần tử của dãy số.

  • Dòng tiếp theo chứa \(N\) số nguyên dương \(a_i\) là các phần tử của dãy số \(A\) \((1 \le i \le N)\)

Output

  • Ghi ra thiết bị ra chuẩn gồm một số nguyên duy nhất là kết quả của bài toán.

Example

Test 1

Input
3
2 1 3
Output
36

Scoring

  • Subtask \(1\): Có \(30\%\) số test ứng với \(N \le 10\), \(a_i \le 10\)

  • Subtask \(2\): Có \(30\%\) số test khác ứng với \(N \le 10^4\), \(a_i \le 10^5\)

  • Subtask \(3\): Có \(40\%\) số test còn lại ứng với \(N \le 10^5\), \(a_i \le 10^7\)

Dễ

Sắp xếp xâu con

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

root

Cho ba xâu \(A, B, C\), thực hiện \(q\) truy vấn trên ba xâu này như sau:

  • Mỗi truy vấn gồm hai số \(l, r\)
  • Gọi \(x = A_{l},A_{l+1}...A_{r}\) ; \(y = B_{l}B_{l+1}...B_{r}\); \(z = C_{l}C_{l+1}...C_{r}\)
  • Sắp xếp ba xâu \(x, y, z\) thành \(x′,y′,z′\)
  • Gán lại các kí tự của xâu \(A\) từ \(l\) đến \(r\) thành \(x′\) , gán các kí tự của xâu \(B\) từ \(l\) đến \(r\) thành \(y′\) , gán các kí tự của xâu \(C\) từ \(l\) đến \(r\) thành \(z′\).

Hãy đưa ra ba xâu \(A, B, C\) sau khi thực hiện xong \(q\) truy vấn.

Input

Dòng đầu chứa số \(n, q\) \((1 \leq n,q \leq 10^5)\)

Ba dòng tiếp theo chứa ba xâu \(A,B,C\) có cùng độ dài chỉ chứa các kí tự thường.

\(q\) dòng tiếp theo, mỗi dòng chứa hai số \(l,r\) \((1 \leq l \leq r \leq n)\) mô tả các truy vấn.

Output

Đưa ra ba xâu trên ba dòng sau khi thực hiện xong các truy vấn.

Example

Test 1

Input
6 6
aabbcc
bcacab
cbcaba
1 1
2 2
3 3
4 4
5 5
6 6
Output
aaaaaa
bbbbbb
cccccc

Test 2

Input
3 1
aba
aab
aac
1 3
Output
aab
aac
aba

Scoring

\(30\%\) số điểm có \(n, q \leq 10^3\).

\(30\%\) số điểm có \(n, q \leq 10^4\).

\(40\%\) số điểm không có ràng buộc gì thêm.

Dễ

Mảng Bập Bênh Cân Bằng trong Vương quốc Seesawia

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

root

Bob là một cư dân nổi tiếng của vương quốc Seesawia, một nơi huyền bí nơi mọi vật thể hoạt động dựa trên nguyên lý cân bằng tuyệt đối. Bob rất thích chơi bập bênh, và từ những ngày thơ ấu của mình, cậu đã có một niềm đam mê mãnh liệt với những chiếc bập bênh cân bằng. Mỗi ngày, Bob lại dành hàng giờ trên chiếc bập bênh kỳ diệu của mình, nghiên cứu cách làm thế nào để giữ cho nó không nghiêng về bất kỳ phía nào, luôn giữ trạng thái hoàn hảo giữa trái và phải.

Vào một ngày nọ, sau khi chơi xong, Bob đã nảy ra một bài toán liên quan đến mảng bập bênh cân bằng - một cấu trúc đặc biệt mà cậu tin rằng sẽ đóng vai trò quan trọng trong việc duy trì hòa bình và sự ổn định cho toàn vương quốc Seesawia. Cụ thể, Bob định nghĩa một mảng \(A = [a_1, a_2, \dots, a_m]\) là một mảng bập bênh cân bằng nếu như tồn tại một vị trí \(k\) giữa mảng (\(1 \leq k \leq m\)) sao cho:

\begincenter
$
\sum_{i=1}^{m} (i - k) a_i = 0
$
\endcenter

Điều này có nghĩa là nếu mỗi phần tử \(a_i\) của mảng được coi là một vật nặng đặt trên một chiếc bập bênh ở vị trí \(i\), thì sẽ có một điểm \(k\) mà tại đó bập bênh không bị nghiêng về phía trái hay phải.

Như một món quà sinh nhật, Bob đã nhận được một mảng \(A = [a_1, a_2, \dots, a_n]\) từ người bạn thân của mình, một thợ thủ công nổi tiếng trong vương quốc. Tuy nhiên, mảng này không cố định: nó có thể thay đổi theo thời gian khi có các yếu tố tác động từ môi trường. Bob muốn biết liệu có một đoạn con nào của mảng mà vẫn giữ được trạng thái cân bằng này sau những thay đổi đó không.

Bob đã phát hiện ra rằng các phần tử trong mảng có thể thay đổi theo thời gian thông qua ba loại phép biến đổi sau, và đây là lúc bạn cần giúp đỡ Bob:

  • Loại 1 \(\ell\) r x: Trong một ngày nắng đẹp, Bob quyết định làm cho một đoạn con từ \(a_\ell\) đến \(a_r\) nặng hơn bằng cách thêm vào mỗi phần tử \(x\) đơn vị trọng lượng.
  • Loại 2 \(\ell\) r x: Trong một cuộc hành trình đến đỉnh Seesaw, Bob đã khám phá ra một loại đá quý phép thuật. Với mỗi viên đá, Bob có thể làm thay đổi toàn bộ trọng lượng của một đoạn con từ \(a_\ell\) đến \(a_r\) thành một giá trị mới là \(x\).
  • Loại 3 \(\ell\) r: Bob muốn kiểm tra xem liệu đoạn \([a_\ell, a_{\ell+1}, \dots, a_r]\) hiện tại có đang ở trạng thái cân bằng hay không. Nếu cân bằng, bạn hãy in ra "Yes", nếu không thì in ra "No".

Hành trình của Bob vẫn tiếp diễn khi cậu khám phá ra vô số cách thay đổi và tương tác với mảng, và mỗi lần thay đổi đều đòi hỏi sự khéo léo và nhanh nhạy trong việc duy trì sự cân bằng của vương quốc. Bạn hãy giúp Bob bằng cách giải quyết các truy vấn này thật nhanh chóng và chính xác nhé

Input

Dòng đầu tiên chứa hai số nguyên \(n\) và \(q\). \(n\) là độ dài của mảng, và \(q\) là số lượng truy vấn.

Dòng thứ hai chứa \(n\) số nguyên \(a_i\) để biểu diễn mảng.

Mỗi truy vấn tiếp theo là một truy vấn được mô tả theo định dạng như sau:

  • 1 $\ell$ r x: Tăng giá trị của đoạn \([a_\ell, a_{\ell+1}, \dots, a_r]\) thêm \(x\).
  • 2 $\ell$ r x: Thay toàn bộ giá trị của đoạn \([a_\ell, a_{\ell+1}, \dots, a_r]\) thành \(x\).
  • 3 $\ell$ r: Kiểm tra xem đoạn \([a_\ell, a_{\ell+1}, \dots, a_r]\) có cân bằng hay không.

Output

Đối với mỗi truy vấn loại 3, in ra "Yes" nếu đoạn \([a_\ell, a_{\ell+1}, \dots, a_r]\) là mảng bập bênh cân bằng, ngược lại in ra "No".

Example

Test 1

Input
3 6
1 2 3
3 1 1
3 1 3
1 1 1 2
3 1 3
2 2 2 0
3 2 3
Output
Yes
No
Yes
Yes

Scoring

Trong tất cả các test :

  • \(1 \leq n \leq 100\,000\): Độ dài của mảng.
  • \(1 \leq q \leq 1\,200\,000\): Số lượng truy vấn mà Bob phải xử lý.
  • \(-1000 \leq a_i \leq 1000\): Giá trị ban đầu của mỗi phần tử trong mảng \(A\).
  • \(-10\,000 \leq x \leq 10\,000\): Giá trị của \(x\) trong mỗi phép biến đổi.
  • Sau mỗi phép biến đổi, bạn có thể giả định rằng \(|a_i| \leq 1.5 \times 10^9\).
  • \(1 \leq \ell \leq r \leq n\): Chỉ số của các đoạn con trong mỗi truy vấn.

Subtask \(1\) với \(20\%\) số điểm có \(n, q <= 200\).

Subtask \(2\) với \(20\%\) số điểm có \(n, q <= 2000\).

Subtask \(3\) với \(20\%\) số điểm trong \(q\) truy vấn, không có truy vấn loại \(1\).

Subtask \(4\) với \(20\%\) số điểm trong \(q\) truy vấn, không có truy vấn loại \(2\).

Subtask \(5\) với \(20\%\) số điểm còn lại không có ràng buộc gì thêm.

Xem thêm