Quốc tế thiếu nhi 2023 - One
Bạn được cho dãy số a gồm n phần tử. Nhiệm vụ của bạn là tìm ra giá trị lớn nhất và nhỏ nhất của a_i-a_j (1\le i,j\le n).
Input, Output và Subtasks
Input
- Dòng đầu tiên gồm số n cho biết độ dài của dãy a (1\le n\le 100)
- Sau đó là n dòng, dòng thứ i cho biết giá trị của a_i (|a_i|\le 10^6)
Output
- Xuất ra 2 giá trị trong 2 dòng, dòng thứ nhất xuất ra hiệu tối đa, dòng thứ hai xuất ra hiệu tối thiểu
Sample
Input
2
3
3
Output
0
0
TLE Speedrun - Tổng các tích chữ số
Input và Output
Input
- Một số nguyên dương N (1 \le N \le 10^6).
Output
- Tổng f(1) + f(2) + ... + f(N) với f(i) là tích các chữ số của i.
Sample
Input
3
Output
6
TLEoj Contest #05 - Ăn ba tô cơm
Ăn ba tô cơm để khỏe
Trường của mondellbit009 mới mở bán trú để cho học sinh ăn và nghỉ trưa tại trường. Là một đứa có nhà ở rất xa, mondellbit009 liền đăng ký ngay. Sau 69 tháng mở bán trú, trường của mondellbit009 đang gặp một vấn đề đau đầu đó là: Học sinh ở đó ăn rất ít, khiến nhà trường bị nghi ngờ là nấu đồ ăn ít + không đảm bảo. Vì thế nhà trường phát động phong trào đó là Ăn ba tô cơm. Nhà trường sẽ trao thưởng cho bạn nếu bạn ăn nhiều hơn hoặc bằng 3 tô cơm với điều kiện để ăn một tô cơm là:
- Ăn cơm không
- Ăn cơm với thịt
- Ăn cơm với canh
- Hoặc là ăn cơm + thịt + canh
Học sinh sẽ tự lấy cho mình a tô cơm, b tô thịt, c tô canh. Hãy kiểm tra xem học sinh đó có đủ điều kiện để nhận thưởng không?
Input, Output và Subtasks
Input
- Dòng đầu tiên nhập t (t \le 10^5) là số lượng testcase.
- t dòng tiếp theo nhập a, b, c (1 \le a \le 10^9, 1 \le b \le 10^9, 1 \le c \le 10^9) tương ứng với số tô cơm, số tô thịt, số tô canh.
Output
- Gồm t dòng, nếu thỏa mãn điều kiện in
YESngược lại inNO.
Subtasks
Không có subtask đâu :)))
Sample 1
Input
3
3 1 2
1 2 1
69 3 2
Output
YES
NO
YES
Note
- Ở testcase thứ nhất, học sinh có thể ăn 2 tô cơm với canh + 1 tô cơm với thịt, nên có thể nhận thưởng.
- Ở testcase thứ hai, học sinh chỉ có thể ăn 1 tô cơm với canh hoặc 1 tô cơm với thịt, nên không thể nhận thưởng.
Ma-nơ-canh (Quảng Nam 2025)
Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.
- Tệp vào:
MANOCANH.INP - Tệp ra:
MANOCANH.OUT - Thời gian chạy:
1.0s - Bộ nhớ:
1024MB
TLEOJ Contest #10 - Mã Kekma
Ở Trái Đất, cấu trúc của ADN được cấu tạo từ sự liên kết của 2 chuỗi nucleotit, trong đó mỗi chuỗi gồm 1 trong 4 nucleotit mang tên A,T,G,X, còn ở hành tinh penguin, tồn tại 26 loại nucleotit tương ứng với 26 chữ cái tiếng Anh viết hoa: A,B,\dots,Z.
Hành tinh penguin rất tân tiến, vậy nên các nhà khoa học đã tạo ra một loại nucleotit mới rất bí ẩn, đặt tên là ?. Bên cạnh đó, họ cũng tìm ra công nghệ chỉnh sửa, chèn vào thứ tự của dãy nucleotit đã có sẵn các loại nucleotit bí ẩn kia.
Ví dụ, có dãy nucleotit A-B-C, các nhà khoa học có thể tạo ra vô hạn dãy mới nhờ thêm vào một vị trí bất kỳ 1 nucleotit ? ấy, điển hình như A-?-B-C-?,...
Nhờ công nghệ thần kỳ kia, và sự đa dạng trong các kiểu hình nucleotit, cộng thêm nucleotit bí ẩn mang tên ? được phát minh ra, các nhà khoa học đã có thể chữa mọi loại bệnh tật, tăng tuổi thọ, cho con người những khả năng đặc biệt!
Sau quá trình nghiên cứu, nhận ra một chuỗi ADN có mã Kekma càng nhỏ, thì lợi ích của nó cho con người càng lớn, trong đó mã Kekma được tính như sau:
Cách tính
Với 2 dãy nucleotit a và b có cùng độ dài n, công thức được tính như sau:
- Với vị trí i, nếu cả a_i và b_i đều là 1 trong 26 ký tự tiếng Anh viết hoa (A,B,\dots,Z) thì giá trị của vị trí thứ i được tính như sau:
- Gọi x là giá trị của nucleotit thứ i trong dãy 1, y là giá trị của nucleotit thứ i trong dãy 2 (Trong đó
Atương ứng với 1,Btương ứng với 2, ...,Ztương ứng với 26) - Khi đó giá trị của vị trí thứ i là |x-y|.
- Gọi x là giá trị của nucleotit thứ i trong dãy 1, y là giá trị của nucleotit thứ i trong dãy 2 (Trong đó
- Ngược lại (tức là 1 trong 2 ký tự là
?) thì giá trị của vị trí thứ i là hằng số Kekma k (được tìm ra). - Mã Kekma của 2 dãy a và b là tổng giá trị của mọi vị trí i từ 1 đến n.
Ví dụ
VD1: ADN có dạng:
- A-B-C
- C-A-B
Xét vị trí đầu tiên, có 2 ký tự A,C không phải là nucleotit đặc biệt ? nên giá trị của vị trí đầu tiên là |1-3|=2.
Xét vị trí thứ hai, có giá trị của vị trí thứ hai là |2-1|=1.
Xét vị trí thứ ba, có giá trị của vị trí thứ ba là |3-2|=1.
Mã Kekma của nó là 2+1+1=4.
VD2: ADN có dạng:
- A-B-?
- C-?-B
Giả sử hằng số Kekma k=3.
Xét vị trí đầu tiên, có giá trị của vị trí đầu tiên là |1-3|=2.
Xét vị trí thứ hai, có ký tự ? ở vị trí thứ hai trong nucleotit thứ hai nên giá trị của vị trí thứ hai là k=3.
Xét vị trí thứ ba, có ký tự ? ở vị trí thứ ba trong nucleotit thứ nhất nên giá trị của vị trí thứ ba là k=3.
Mã Kekma của nó là 2+3+3=8.
Vì tìm ra được lý thuyết ấy, được cả thế giới tôn vinh và giao cho một trọng trách lớn lao là tìm được mã Kekma nhỏ nhất của 1 ADN được tạo thành từ 2 chuỗi nucleotit đã được xử lý.
Biết rằng ban đầu 2 chuỗi nucleotit có độ dài bất kỳ, chỉ chứa các nucleotit A,B,\dots,Z, và cần xử lý chúng bằng cách cho thêm một số nucleotit bí ẩn mang tên ? vào một số vị trí bất kỳ trong 2 chuỗi nucleotit đó. Chú ý là sau khi thực hiện thao tác thì 2 dãy phải có độ dài bằng nhau.
Vì bận nghiên cứu thêm về mã Kekma tại web Kekma, nó đã bị ẩn đi do đó là thông tin mật, vậy nên anh ấy đã giao nhiệm vụ lớn lao kia cho bạn, hãy giúp tạo ra 1 ADN thỏa mãn yêu cầu.
Input, Output và Subtask
Input
- Dòng thứ nhất: 2 chuỗi Nucleotit chỉ gồm các ký tự từ A,B,\dots,Z tương ứng các nucleotit, độ dài không quá 3000.
- Dòng tiếp theo: hằng số Kekma, gọi tắt là k (0 \le k \le 1000)
Output
- Gồm 1 dòng duy nhất là kết quả thỏa mãn.
Example
Input
AAA
CCC
0
Output
0
Note
Ta có thể xử lý 2 chuỗi như sau:
- A-?-A-?-A-?
- ?-C-?-C-?-C
Khi đó, dễ dàng tính được mã Kekma là 0.
Đội tình nguyện (HSG9 BR 2024)
Có n học sinh của một trường THCS tham gia một đội tình nguyện viên, học sinh thứ i có chiều cao h_i. Tuy nhiên, ban tổ chức muốn đội hình phải gồm những bạn học sinh có chiều cao bằng nhau (để đội hình đồng đều, đẹp).
Yêu cầu: Hãy giúp ban tổ chức chọn ra một nhóm các học sinh có chiều cao bằng nhau với số lượng nhiều nhất, nếu có nhiều nhóm có số lượng bằng nhau thì chọn nhóm có chiều cao lớn nhất.
Input, Output and Scoring
Input (TNV.inp)
- Dòng thứ nhất gồm một số nguyên dương n (1 \le n \le 10^5).
- Dòng thứ hai gồm n số nguyên dương h_1, h_2, ..., h_n (h_i \le 250).
Output (TNV.out)
- Một dòng duy nhất ghi chiều cao và số lượng học sinh được chọn cách nhau một ký tự trắng.
Example
Input (TNV.inp)
6
178 167 167 167 187 156
Output (TNV.out)
167 3
Mua tập (Bến Tre 2023)
Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.
- Tệp vào:
TIEN.INP - Tệp ra:
TIEN.OUT - Thời gian chạy:
1.0s - Bộ nhớ:
1024MB
Tiền điện (Tiền Giang 2024)
Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.
- Tệp vào:
ELCOST.INP - Tệp ra:
ELCOST.OUT - Thời gian chạy:
1.0s - Bộ nhớ:
1024MB
CHỮ SỐ (Đắk Lắk 2023)
Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.
- Tệp vào:
CHUSO.INP - Tệp ra:
CHUSO.OUT - Thời gian chạy:
1.0s - Bộ nhớ:
1024MB
Giải bất phương trình (Nam Định 2025)
Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.
- Tệp vào:
BPT.INP - Tệp ra:
BPT.OUT - Thời gian chạy:
1.0s - Bộ nhớ:
1024MB
Biến đổi xâu (TS10 TH 2023)
Cho xâu S=S_1 S_2 \dots S_i \dots S_j \dots S_n (1\le i\le j\le n) chỉ gồm các chữ cái tiếng Anh in thường.
Phép đảo ngược xâu là phép biến đổi xâu ban đầu thành một xâu mới có thứ tự các ký tự ngược lại so với xâu ban đầu. Ví dụ ten đảo ngược thành net, time đảo ngược thành emit
Mỗi lần áp dụng phép đảo ngược xâu trên một xâu con liên tiếp từ vị trí i đến vị trí j của xâu S sẽ thu được xâu S'=S_1 S_2 \dots S_j \dots S_i \dots S_n
Yêu cầu: Tính số lượng các xâu khác nhau nằm trong tập hợp M
Input, Output và Subtasks
Input: (CAU4.INP)
- Gồm 1 dòng là xâu S (độ dài không quá 2\cdot 10^5)
Output: (CAU4.OUT)
- Một số nguyên là kết quả của bài toán
Subtasks
- Subtask 1 (50\%): Độ dài xâu S không quá 100
- Subtask 2 (50\%): Không có ràng buộc gì thêm
Sample
Input (CAU4.INP)
tent
Output (CAU4.OUT)
6
Note
Tập M gồm: tent,etnt,nett,tnet,ttne,tetn
ĐÈN CHIẾU SÁNG CÔNG CỘNG (Nghệ An 2024)
Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.
- Tệp vào:
CHIEUSANG.INP - Tệp ra:
CHIEUSANG.OUT - Thời gian chạy:
1.0s - Bộ nhớ:
1024MB
Thống kê (Vĩnh Phúc 2025)
Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.
- Tệp vào:
CAU3.INP - Tệp ra:
CAU3.OUT - Thời gian chạy:
1.0s - Bộ nhớ:
1024MB
TLEoj Contest #09 - PVBM
T là một người vô cùng thượng đẳng, hiện đang làm chủ 1 nhà hàng ở đâu đó. Hắn ta cứ hở ra là lại nói những thứ rất là súc vật và mang tính phân biệt đối xử khá cao - đến mức vài người coi hắn là truyền nhân tương lai của anh họa sĩ người Áo nào đó. Cay cú và nghĩ rằng mình bị kì thị do suốt ngày ăn nói lung tung, hắn muốn hợp lí hóa đống tư tưởng siêu cực đoan của mình bằng cách thống kê những hành động của các thực khách trong nhà hàng của mình.
Ở đất nước của hắn (dĩ nhiên là Byteland, Bitland là cho bọn khố rách áo ôm, đương nhiên rồi) có N thành phố, được đánh số từ 1 đến N. T quá racist nên không phục vụ cho bất kì thực khách nào không đến từ 1 trong N thành phố của đất nước Byteland cả. Với những khách hàng của mình, hắn chia nhà hàng của hắn thành 2 khu vực:
- Khu vực phục vụ: Gồm N phòng ăn tập trung được đánh số từ 1...N. Phòng ăn thứ i chỉ dành cho những người đến từ thành phố i, và có sức chứa là C[i] khách. Khi 1 khách hàng từ thành phố i đến, nếu trong phòng ăn thứ i đang có ít hơn C[i] người, khách hàng này sẽ được đi thẳng vào phòng ăn
- Khu vực chờ: Gồm N phòng chờ được đánh số từ 1...N. Phòng chờ thứ i chỉ dành cho những người đến từ thành phố i, và có sức chứa là D[i] khách. Nếu 1 khách hàng đến từ thành phố i đến và phòng ăn tập trung thứ i không còn chỗ, khách hàng đó sẽ vào phòng chờ thứ i. Nếu 1 vị khách đang ở trong phòng ăn thứ i bị đuổi ra, họ sẽ vào phòng chờ thứ i. Nếu 1 vị khách bị đuổi khỏi khu vực chờ, họ sẽ không quay trở lại.
- Nếu 1 khách hàng từ thành phố i đến và cả phòng ăn thứ i lẫn phòng chờ thứ i đều không còn chỗ, họ sẽ đi về và không gây ảnh hưởng gì đến số liệu cả.
Trong 1 ngày sẽ có Q hành động, mỗi hành động được kí hiệu như sau:
-
1 l r k: 1 nhóm các đại biểu đến nhà hàng. Với mỗi thành phố có số thứ tự i (l \le i \le r), lần lượt có k đại biểu đi đến nhà hàng. -
2 l r k: Với mỗi phòng có số thứ tự i (l \le i \le r), lần lượt đuổi k người đi. Nếu trong phòng ăn nào đó có ít hơn k người, đuổi tất cả mọi người đi. -
3 A k: Mời k vị khách vào khu vực chờ sớm nhất (tính đến thời điểm hiện tại) vào phòng ăn tương ứng. Nếu trong khu vực chờ có ít hơn k khách, cho tất cả vào. Nếu trong phòng ăn i không còn chỗ, khách hàng này sẽ tự bỏ về, rời khỏi khu vực chờ. -
3 B k: Đuổi k vị khách vào khu vực chờ sớm nhất (tính đến thời điểm hiện tại) khỏi nhà hàng. -
4 A: Tìm số vị khách lớn nhất đến từ cùng 1 thành phố đã đến nhà hàng. 4 B: Tìm số vị khách lớn nhất đến từ cùng 1 thành phố đang trong khu vực phục vụ.-
4 C: Tìm số vị khách lớn nhất đến từ cùng 1 thành phố đang trong khu vực chờ. -
5 A: Tính tổng số người đang ở trong khu vực phục vụ ở thời điểm hiện tại 5 B: Tính tổng số người đang ở trong khu vực chờ ở thời điểm hiện tại.
Dữ liệu đầu vào đảm bảo:
- Số khách hàng từng vào nhà hàng không vượt quá 10^7
- Số lần 1 vị khách vào khu vực phục vụ không vượt quá 10^7
- Trong mọi truy vấn loại 1,2,3; k \le 10^9
Yêu cầu: Với mỗi truy vấn loại 4 hoặc loại 5, in ra thông tin mà truy vấn yêu cầu.
Input, Output và Scoring
Input (bàn phím)
- Dòng đầu tiên gồm 2 số N, Q (1 \le N, Q \le 10^5) - Số thành phố trong đất nước Byteland, và số hành động trong ngày hôm đó.
- Dòng thứ 2 gồm N số C[1], C[2],....., C[N] (1 \le C[i] \le 10^{18}) - sức chứa của phòng ăn thứ i
- Dòng thứ 3 gồm N số D[1], D[2],....., D[N] (1 \le D[i] \le 10^{18}) - sức chứa của phòng chờ thứ i
- Q dòng tiếp theo gồm các số miêu tả các truy vấn.
Output (màn hình)
- Với mỗi truy vấn loại 4 hoặc $5, in ra dữ liệu được yêu cầu trên 1 dòng.
Subtasks
- Subtask 1 (3% số điểm): Chỉ gồm các truy vấn loại 1 và 5; N,Q \le 1000; với mọi truy vấn loại 1: k=1; C[1] = C[2] = ... = C[N] = 10^{18}
- Subtask 2 (8% số điểm): Chỉ gồm các truy vấn loại 1,4,5; N,Q \le 100000
- Subtask 3 (27% số điểm): C[1] = C[2] = ... = C[N], D[1] = D[2] = ... = D[N]
- Subtask 4 (29% số điểm): D[1] = D[2] = ... = D[N] = 10^{18}; l=1 và r=N với mọi truy vấn loại 1 và 2
- Subtask 5 (33% số điểm): Không có điều kiện gì thêm
Sample
Input (bàn phím)
7 10
100 100 100 100 100 100 100
5 5 5 5 5 5 5
1 1 4 11
1 2 6 12
1 3 7 18
1 1 10 40
1 5 9 12
4 B
4 A
4 C
5 A
5 B
Output (màn hình)
82
82
0
510
0
Notes
Sau 5 truy vấn đầu tiên:
- Số người đang ở trong các phòng ăn: 51 63 81 81 82 82 70$
- Số người đang ở trong các phòng chờ: 0 0 0 0 0 0 0
- Truy vấn loại 4B hỏi số người nhiều nhất đang ở trong cùng 1 phòng ăn. Kết quả là 82 - thuộc về phòng 5 hoặc 6.
- Do chưa ai bị đuổi ra ngoài nên số người nhiều nhất đến từ cùng 1 thành phố mà đã đến nhà hàng cũng là 82 - thuộc về thành phố 5 hoặc 6.
- Do chưa ai bị đuổi ra ngoài, số người nhiều nhất đến từ cùng 1 thành phố mà đã bị đuổi là 0 - cả 7 thành phố đều vậy.
- Tổng số người đang ở trong khu vực phục vụ là 510
- Không có ai ở trong khu vực chờ cả.
Sample 2
Input (bàn phím)
5 5
2 3 5 3 2
2 2 2 2 2
1 1 5 3
2 1 5 1
3 B 3
3 A 4
4 B
Output (màn hình)
3
Notes
Sau truy vấn đầu tiên:
Phòng ăn: 2 3 3 3 2
Phòng đợi: 1 0 0 0 1
Hàng đợi: 1 5
Sau truy vấn thứ 2:
Phòng ăn: 1 2 2 2 1
Phòng chờ: 2 1 1 1 2
Hàng đợi: 1 5 1 2 3 4 5
Sau truy vấn thứ 3:
Phòng ăn: 1 2 2 2 1
Phòng chờ: 0 1 1 1 1
Hàng đợi: 2 3 4 5
Sau truy vấn thứ 4:
Phòng ăn: 1 3 3 3 2
Phòng chờ: 0 0 0 0 0
TLEoj Contest #09 - Nhà cây
Tọa lạc tại vị trí vô cùng đắc địa, phòng 702 D4 trường THPT Chuyên Sư Phạm tự hào là hàng net lâu đời nhất nhì và chắc chắn là cao nhất đường Xuân Thủy - Nơi mà máy nào máy nấy đều có case máy đèn 7 màu, người người nhà nhà đều mang bàn phím custom đi, máy nào cũng có Steam, không thì Genshin hoặc Y8 browser. Ngày hôm nay, các thành viên K56 Tin gồm SpiceDangSpice, Lib, NotNaCl, Kubogi, Normankr07 đang tranh thủ ngồi chơi Minecraft trong lúc chờ thầy Hoàng setup server CSPOI (họ không biết rằng thầy đang setup 2 bài matching và 4 bài mincost flow).
Do đã quá chán nản với việc làm theo Geneva Suggestions và làm đủ các thứ trò con bò, họ đã quyết định: Thay vì tiếp tục mở rộng danh sách "tội ác chống lại loài người" của mình, hôm nay, họ sẽ làm thứ gì đó "Zen" hơn: Xây nhà. Tuy nhiên, do bản tính siêu sv đã ắn sâu vào trong máu, các thành viên lớp 11D6 không thể nào chịu được việc phải đặt các block xuống để xây nhà. Trong hoàn cảnh đó, Lib đã nghĩ ra 1 ý tưởng siêu thiên tài: Phá rừng để làm nhà (vẫn không phải Crimes Against Humanity nhé).
Sau khoảng 10 phút đi tìm 1 mảnh rừng chưa bị cháy thành tro, các thành viên lớp 11D6 đã tìm được 1 mảnh đất có kích thước M \times N block. Các hàng được đánh số từ 1 đến M, các cột được đánh số từ 1 đến N. Trong mảnh rừng này, ở ô [i][j] sẽ có giá trị là 0 nếu ở đó không có cây nào, ngược lại ô [i][j] sẽ có giá trị là 1. 1 ngôi nhà cần phải có dạng 1 hình vuông kích thước A \times A, với tất cả các ô ở trên cạnh đều phải có sẵn cây (để làm tường), và tất cả các ô không nằm trên cạnh của ngôi nhà đều phải không có cây nào. Dĩ nhiên, để tìm được 1 khu đất đủ to mà không chứa cây nào trong tự nhiên là rất khó, nên vẫn có thể chặt 1 số cây đi được. Tuy nhiên, do chỉ còn 3 ngày nữa là thi tuyển, và không ai muốn bị đánh giá là quá nghiện ngập, mải chơi không lo học bởi một Mrs REDACTED nào đó, tập thể sv lớp 11D6 chỉ được phép chặt tối đa không quá K cây.
Yêu cầu: Tính diện tích của ngôi nhà lớn nhất mà các thành viên lớp 11D6 có thể "xây" được thỏa mãn các yêu cầu của đề bài.
Input, Output and Subtasks
Input
- Dòng 1 là 3 số nguyên dương M, N, K.
- M dòng tiếp theo, mỗi dòng là N số chỉ trạng thái của ô [i][j].
- Dữ liệu đề bài đảm bảo M, N\le 6000 trong mọi testcase.
Output
- Gồm 1 số nguyên là diện tích của ngôi nhà lớn nhất tìm được.
Subtasks
- Có 20\% số testcase có K=0
- Có 30\% số testcase có K=1
- 50\% testcase còn lại, K không có điều kiện gì thêm
1) 40\% số điểm: M,N\le 300
2) 30\% số điểm: M\times N\le 10^6
3) 30\% số điểm: M\times N\le 5\times 10^6.
Example 1
Input
9 12 0
0 1 0 1 0 1 1 0 1 1 0 0
1 1 1 1 1 0 0 0 0 1 1 0
1 0 1 1 1 1 1 1 1 1 1 1
1 1 0 1 0 1 0 0 0 1 0 1
0 1 1 1 1 1 0 0 0 1 0 1
1 0 1 0 0 1 0 0 0 1 1 0
0 1 1 0 0 1 1 1 1 1 0 1
1 1 0 1 1 1 0 0 1 1 1 0
1 1 1 1 0 1 0 0 0 1 1 0
Output
25
Example 2
Input
13 12 1
0 0 0 0 0 0 1 0 0 1 0 0
0 0 0 1 0 1 1 1 0 0 1 0
0 1 0 1 1 1 0 1 0 0 1 1
1 0 1 1 1 1 1 0 1 0 1 1
1 1 1 0 0 0 1 1 1 0 1 0
0 1 1 0 0 0 1 0 1 0 0 1
0 0 1 0 0 1 1 0 0 0 1 0
1 1 1 1 1 1 1 1 0 1 0 0
0 1 1 0 1 0 0 1 0 1 0 1
0 0 0 0 0 0 0 0 0 0 0 0
0 1 0 1 0 0 1 1 0 1 1 1
0 0 0 0 1 1 0 0 0 0 0 0
0 0 1 0 0 1 0 0 0 1 0 1
Output
25
Example 3
Input
13 12 11
0 1 0 0 0 1 1 1 1 1 1 1
1 0 0 1 0 1 1 1 0 0 1 1
0 0 1 0 1 1 0 0 0 1 0 1
0 1 1 0 1 1 0 1 1 0 0 1
0 1 1 1 1 1 0 0 0 1 1 1
1 1 1 1 1 1 1 0 1 0 1 1
1 0 0 1 1 1 1 1 1 1 1 1
1 1 0 1 0 0 1 0 1 0 0 1
1 0 0 1 0 0 1 1 0 1 0 1
1 0 1 0 1 1 1 0 1 1 1 1
0 1 1 0 0 0 1 1 1 1 1 1
1 0 1 0 1 1 0 0 1 1 1 1
0 0 1 1 1 0 1 1 1 0 1 1
Output
49
TLEoj Cup Final Day 1 - Truy vấn dãy tăng
Bạn được cho một dãy a có n phần tử và bạn phải thực hiện hai loại truy vấn:
- Loại 1:
! u v: Thay đổi giá trị của a_u thành v. - Loại 2:
? l r: Giả sử mỗi thao tác bạn có thể chọn một phần tử bất kỳ và tăng nó lên 1 đơn vị, tính số thao tác ít nhất để dãy con từ l đến r trở thành dãy không giảm (lưu ý: đây chỉ là thao tác tính toán thuần túy, không ảnh hưởng đến dãy a).
Bạn còn được cho một số t, biểu thị độ phụ thuộc của các truy vấn loại 1. Nếu t = 0 thì các truy vấn loại 1 sẽ độc lập với nhau, hay nói cách khác, truy vấn loại 1 thứ i - 1 sẽ hết hiệu lực ngay trước khi thực hiện truy vấn loại 1 thứ i. Nếu t = 1, các truy vấn loại 1 sẽ cớ tác dụng vĩnh viễn.
Input, Output và Subtask
Input (IAQ.inp)
- Dòng đầu tiên gồm ba số nguyên dương n, t, q, miêu tả số phần tử của dãy a, độ phụ thuộc giữa các truy vấn với nhau, và số lượng truy vấn. (n, q \le 10^5)
- Dòng thứ hai gồm n số nguyên mô tả dãy a ban đầu (a_i \le 10^9).
- q dòng tiếp theo, mỗi dòng là một truy vấn có dạng như trên.
Output (IAQ.out)
- Với mỗi truy ván loại 2, in ra kết quả cần tìm.
Subtask
- 20\% số điểm có n, q \le 2000.
- 20\% số điểm khác không có truy vấn loại 1.
- 20\% số điểm khác có t = 0 và l = 1, r = n với mọi truy vấn loại 2.
- 20\% số điểm khác có t = 1 và l = 1, r = n với mọi truy vấn loại 2.
- 20\% số điểm còn lại không có giới hạn gì thêm.
Sample 1
Input (IAQ.inp)
4 0 6
2 4 1 4
! 2 4
? 1 4
! 3 3
? 1 4
! 2 1
? 1 4
Output (IAQ.out)
3
1
2
Notes
Input (IAQ.inp) |
Output (IAQ.out) |
Note |
|---|---|---|
4 0 6 |
n = 4, q = 6 và các truy vấn là độc lập | |
2 4 1 4 |
a = (2, 4, 1, 4) | |
! 2 4 |
a = (2, 4, 1, 4) | |
? 1 4 |
3 |
Cần 3 thao tác để biến dãy a thành (2, 4, 4, 4) |
! 3 3 |
a = (2, 4, 3, 4) | |
? 1 4 |
1 |
Cần 1 thao tác để biến dãy a thành (2, 4, 4, 4) |
! 2 1 |
a = (2, 1, 1, 4) | |
? 1 4 |
2 |
Cần 2 thao tác để biến dãy a thành (2, 2, 2, 4) |
Sample 2
Input (IAQ.inp)
5 1 6
2 10 4 2 5
? 3 5
! 3 3
? 3 5
! 2 4
! 4 6
? 1 5
Output (IAQ.out)
2
1
2
Notes
Input (IAQ.inp) |
Output (IAQ.out) |
Note |
|---|---|---|
5 1 6 |
n = 5, q = 6 và các truy vấn phụ thuộc vào nhau | |
2 10 4 2 5 |
a = (2, 10, 4, 2, 5) | |
? 3 5 |
2 |
Cần 2 thao tác để biến dãy (a_3, a_4, a_5) thành (4, 4, 5) |
! 3 3 |
a = (2, 10, 3, 2, 5) | |
? 3 5 |
1 |
Cần 1 thao tác để biến dãy (a_3, a_4, a_5) thành (3, 3, 5) |
! 2 4 |
a = (2, 4, 3, 2, 5) | |
! 4 6 |
a = (2, 4, 3, 6, 5) | |
? 1 5 |
2 |
Cần 2 thao tác để biến dãy a thành (2, 4, 4, 6, 6) |
Mật khẩu an toàn (HSG12 QT 2023)
Một xâu kí tự được coi là mật khẩu "an toàn" nếu thỏa mãn:
- Có độ dài ít nhất là 6.
- Có ít nhất một chữ cái tiếng Anh in thường (a...z).
- Có ít nhất một chữ cái tiếng Anh in thường (A...Z).
- Có ít nhất một kí tự số thập phân (0...9).
Yêu cầu: cho 1 xâu S đếm số lượng xâu con liên tiếp của S là mật khẩu an toàn.
Input, output và Subtask
Input(MATKHAU.INP)
- Gồm 1 dòng duy nhất chứa xâu S.
Output(MATKHAU.INP)
- in ra số lượng xâu con thỏa mãn.
Scoring
- Subtask 1: 50\% số điểm độ dài xâu S nhỏ hơn 500.
- Subtask 2: 30\% số điểm độ dài xâu S nhỏ hơn 2*10^5.
- Subtask 3: 20\% số điểm độ dài xâu S nhỏ hơn 2*10^6.
Example 1
Input(MATKHAU.INP)
12Aabcde
Output(MATKHAU.INP)
5
Example 2
Input(MATKHAU.INP)
Ab12Ab12Ab
Output(MATKHAU.INP)
15
TLEoj Contest #06 - Bộ ba tổng
Một bộ ba (i, j, k) được gọi là bộ ba thành tổng nếu nó thỏa mãn:
- 1 \le i, j, k \le n.
- i+j+k = m.
Cho hai số nguyên dương n, m, hãy in ra số lượng bộ ba (i, j, k) là bộ ba thành tổng.
Input, Output and Scoring
Input
- Dòng đầu bao gồm 1 số t là số testcase (1\le t\le 10)
- Sau đó là t dòng, mỗi dòng gồm 2 số nguyên dương n, m (1 \le n \le 2 \times 10^6; 1 \le m \le 3 \times n).
Output
- Với mỗi testcase, in ra kết quả tương ứng trên 1 dòng.
Scoring
- Subtask 1 (20\%): 1 \le n \le 2 \times 10^2.
- Subtask 2 (30\%): 1 \le n \le 2 \times 10^3.
- Subtask 3 (50\%): Không giới hạn gì thêm.
Example
Input
3
5 1
2 6
3 7
Output
0
1
6
Note
- Trong testcase 1, ta dễ dàng nhận thấy không có bộ ba nào thỏa mãn
- Trong testcase 2, chỉ có 1 bộ ba thỏa mãn là (2,2,2).
- Trong testcase 3, có 6 bộ ba thỏa mãn là (1, 3, 3), (2, 2, 3), (2, 3, 2), (3, 1, 3), (3, 2, 2) và (3, 3, 1).