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ố

Sunlight
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

i_love_moonlight

Ă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 YES ngược lại in NO.
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

2tk

Ở 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, 2tk 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 đó A tương ứng với 1, B tương ứng với 2, ..., Z tương ứng với 26)
    • Khi đó giá trị của vị trí thứ i là |x-y|.
  • 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 2tk 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, 2tk đượ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à 2tk 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ì 2tk 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 2tk 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)

Sunlight

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)

Sunlight

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

Lib

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

Lib

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

Sunlight

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)

i_love_moonlight, tourist

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

flo

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).