Chương trình

Sunlight

Cho một hàm f được viết bằng ngôn ngữ C++ như sau (ở đây ^ là phép XOR, & là phép AND, << là phép dịch bit):

long long f (long long a, long long b)
{
    if (b == 0) return a;
    else return f(a ^ b, (a & b) << 1);
}

Hỏi trong số các số nguyên dương từ 1 tới n, có bao nhiêu cặp (i,j) (i\leq j) sao cho f(i,j) = i^j

Input, Output và Subtask:

Input:
  • Một dòng gồm số nguyên dương duy nhất là n.
Output:
  • Số cặp số thõa mãn.
Subtask:
  • n\leq 50000 với mọi testcase.

Sample:

Input:
5
Output:
5
Subtasks:

Các cặp số thõa mãn là (1,2),(1,4),(2,4),(2,5),(3,4).

TLE Speedrun - Tổng bình phương

Sunlight
Input và Output
Input
  • Dòng đầu tiên gồm một số nguyên dương N (N \le 5 \times 10^4).
Output
  • Tổng các giá trị (i - j)^2 với mọi 1 \le i, j \le N.
Sample
Input
3
Output
12

TLEoj Contest #06 - A LCA problem

huyhau6a2

huyhau6a2 là 1 người rất thích chơi với cây. Vài hôm trước cậu đã mua về 1 cây thần kỳ, cây này bao gồm n đỉnh. Ngoài ra, cây của huyhau6a2 còn có khả năng đặc biệt là có thể thay đổi gốc bất cứ lúc nào.

Chơi với cây quá chán, cậu quyết định rủ người anh em (khác cha khác mẹ) Kubogi vào chơi cây cùng mình và anh Kubogi đã nghĩ ra 1 trò chơi, trò chơi như sau:

Với mỗi lần, Kubogi sẽ đổi gốc của cây thành x, và huyhau6a2 phải tìm LCA(u,v). Trong đó LCA(u,v) là tổ tiên chung gần nhất của 2 đỉnh u và v.

Input, Output và Subtasks

Input: (bàn phím)
  • Dòng đầu tiên gồm 2 số n,q là số đỉnh của cây và số lượt hỏi (1\le n,q\le 2\times 10^5)
  • Tiếp đó là n-1 dòng, mỗi dòng gồm 2 số u,v là 1 cạnh của cây. Dữ liệu đảm bảo đây là 1 cây hợp lệ (1\le u,v\le n)
  • Cuối cùng là q dòng, mỗi dòng gồm 3 số u,v,x (1\le u,v,x\le n)
Output: (màn hình)
  • Với mỗi câu hỏi, xuất ra kết quả trên một dòng.
Subtasks
  • Subtask 1 (10\%): n\le 1000
  • Subtask 2 (20\%): Mọi câu hỏi luôn có giá trị x không đổi
  • Subtask 3 (30\%): Mọi câu hỏi luôn có giá trị u,v không đổi
  • Subtask 4 (40\%): Không có ràng buộc gì thêm

Sample

Input (bàn phím)
5 5
1 2
1 3
2 4
2 5
4 5 1
4 5 5
5 1 4
5 1 3
1 5 1
Output (màn hình)
2
5
2
1
1

Trạm phát sóng (Hà Nội 2023)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: TPS.INP
  • Tệp ra: TPS.OUT
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

BIỂU THỨC (Lào Cai 2024)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: bai3.inp
  • Tệp ra: bai3.out
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

TLEOJ Contest #14 - Pride Paths

kitngao

Có ai ở đây biết tháng 6 này là tháng dành cho người thuộc nhóm \text{LGBT+} không? Giờ thì bạn biết rồi đấy.
Là một con người theo dõi xã hội phương Tây trong nhiều năm, đó cũng là một phần vinh dự của tôi khi được làm một trong những khán giả xem những người thuộc nhóm \text{LGBT+} diễn hề trong những ngày này. Và có cách gì tốt hơn khi làm điều đó khi gắn nó vào một thứ không liên quan gì tới tháng này nhỉ?

Cho một đồ thị gồm n đỉnh và m cạnh vô hướng, cạnh thứ i nối hai đỉnh u_i và v_i.

Đỉnh thứ i chỉ mang đúng một màu, được chọn từ 26 mã màu có sẵn có thể tô lên đồ thị, được đánh dấu từ A đến Z.

Nhận thấy lá cờ mà nhóm \text{LGBT+} vẽ ra cho từng nhóm người có ba dải màu trên từng lá cờ không? Cho một bộ ba mã màu khác nhau z_1 \ne z_2 \ne z_3, tạo thành một xâu Z, cũng như cách lá cờ đó được tô màu vậy. Xác định xem có tồn tại một tập hợp các điểm a_1, a_2 ,a_3 ,..., a_{k - 1}, a_k với chỉ số khác nhau đôi một thỏa mãn rằng:

  • Trong đồ thị con chỉ chứa các đỉnh a_1, a_2, ..., a_{k - 1}, a_k và các cạnh nối giữa hai đỉnh bất kì nằm trong tập này, tồn tại ít nhất một cách di chuyển trên đồ thị đó giữa hai cặp đỉnh bất kì.
  • Màu được tô ở đỉnh a_i chỉ có thể là z_1 hoặc z_2 hoặc z_3, với mọi 1 \le i \le k.
  • Mỗi màu trong số ba màu z_1, z_2, z_3 phải được tô lên ít nhất một trong số k điểm trong tập.

\text{Input} PPS.inp

  • Dòng một gồm ba số n, m (1 \le n \le 10^5; n - 1 \le m \le \text{min}⁡(5*10^5,\frac{n(n-1)}{2}), thể hiện số lượng đỉnh và số lượng cạnh của đồ thị, và q (1 \le q \le 15600), thể hiện số lượng truy vấn.
  • Dòng thứ hai gồm một xâu S được đánh số từ 1 đến n, chỉ gồm các kí tự \text{Latin} hoa, với S[i] thể hiện mã màu của đỉnh thứ i (với 1 \le i \le n).
  • m dòng tiếp theo, dòng thứ i gồm hai số u_i, v_i (1 \le u_i \ne v_i \le n), thể hiện rằng tồn tại một cạnh hai chiều nối giữa hai đỉnh u_i và v_i trong đồ thị.
  • q dòng cuối cùng, mỗi dòng gồm một xâu kí tự Z có đúng ba kí tự \text{Latin} hoa, thể hiện một truy vấn. Xâu Z đảm bảo rằng z_1 \ne z_2 \ne z_3.
  • Dữ liệu trong \text{Input} được đảm bảo rằng giữa hai điểm có không quá một cạnh nối giữa chúng và tồn tại ít nhất một cách di chuyển giữa một điểm bất kì tới điểm còn lại.

\text{Output} PPS.out

  • Với mỗi truy vấn, in ra \text{YES} / \text{NO} đối với câu hỏi trên đề với xâu kí tự Z của mỗi truy vấn.

\text{Scoring}

  • Subtask \text{#}1 (50\% số điểm): n \le 26; các S[i] khác nhau đôi một.
  • Subtask \text{#}2 (30\% số điểm): m = n - 1.
  • Subtask \text{#}3 (20\% số điểm): Không có điều kiện gì thêm.

\text{Examples}

\text{Test #}1

\text{Input}

6 7 3
ABDEBC
1 2
5 3
1 3
2 3
5 2
4 2
5 6
ABC
AEC
AZC

\text{Output}

YES
NO
NO
\text{Explanations}

Ở testcase \text{#}2 và \text{#}3, không tồn tại một bộ a_i phù hợp.
Ở testcase \text{#}1, bộ a_i phù hợp và duy nhất phù hợp là [1; 2; 5; 6].

Bộ đỉnh này thỏa mãn vì tồn tại một cách di chuyển giữa các cặp đỉnh (1; 2), (1; 5), (1; 6), (2; 5), (2; 6), (5; 6), và màu được tô ở bốn đỉnh này là \text{A}, \text{B} (ở đỉnh 2 và 5), và \text{C}.

TLEOJ [x QTOJ] Contest #13 - H - Vẽ hình

Sunlight

Xét một bảng hình chữ nhật gồm n \times m điểm, xếp thành n hàng m cột. Các cột được đánh số từ 1 đến m từ trái sang phải, các hàng được đánh số từ 1 đến n từ dưới lên trên. Điểm ở hàng i cột j ký hiệu là (i, j). Hai điểm liên tiếp trên một hàng hoặc một cột cách nhau 1.

Vẽ một đường tròn có tâm là điểm (u, v) và bán kính r. Xóa toàn bộ các điểm nằm trong hoặc trên đường tròn.

In ra bảng sau khi thực hiện thao tác xóa.

Input và Output

Input: (bàn phím)
  • Một dòng duy nhất gồm năm số nguyên dương n, m, u, v, r (1 \le u \le n \le 200, 1 \le v \le m \le 200, 1 \le r \le 10^{18}).
Output: (màn hình)
  • Gồm n hàng, mỗi hàng gồm m ký tự. Ký tự thứ i ở hàng j là # khi và chỉ khi điểm ở hàng i cột j chưa bị xóa, ngược lại, ký tự thứ i ở hàng j là ..

Sample

Input (bàn phím)
6 7 1 1 5
Output (màn hình)
.######
....###
.....##
.....##
.....##
......#
Note

Số Mersenne (HSG9 NB 2023)

Sunlight

Một số nguyên tố được gọi là số Mersenne nếu nó có thể biểu diễn dưới dạng 2^k-1 trong đó k cũng là 1 số nguyên tố.

Yêu cầu: Cho số tự nhiên n. Tìm số Mersenne lớn nhất nhưng nhỏ hơn n.

Input, Output và Subtasks

Input: (mersen.inp)
  • Ghi số nguyên n (3<n\le 10^{10})
Output: (mersen.out)
  • Ghi số Mersenne lớn nhất nhưng nhỏ hơn n tìm được
Subtasks
  • Subtask 1 (40\%): n\le 10^5
  • Subtask 2 (40\%): n\le 10^9
  • Subtask 3 (20\%): Không có ràng buộc gì thêm

Sample 1

Input (mersen.inp)
4
Output (mersen.out)
3
Note

Ta có: 3=2^2-1 và 3,2 đều là số nguyên tố. Do đó, 3 là số Mersenne lớn nhất nhưng nhỏ hơn 4

Sample 2

Input (mersen.inp)
9
Output (mersen.out)
7
Note

Ta có: 7=2^3-1 và 7,3 đều là số nguyên tố. Do đó, 7 là số Mersenne lớn nhất nhưng nhỏ hơn 9

Dãy số bitonic (Quảng Ninh 2025)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: bit.inp
  • Tệp ra: bit.out
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

TLEOJ Contest #10 - Nước Cam

icebearlovecode

Sau khi đá bóng, chinhoangmanutd đã rất khát nước. Sau đó anh ấy đi đến quầy nước cam với t đồng trong người.

Tại quầy bán nước cam, có 2 loại chai:

  • Chai nhựa với mức giá là x
  • Chai thủy tinh với mức giá là y
  • Vì chai thủy tinh có thể tái chế được nên là có thể bán lại cho quán với mức giá là z

Nhiệm vụ của bạn là tính số chai lớn nhất mà chinhoangmanutd có thể mua với t đồng trên. Và bạn sẽ phải xử lí q trường hợp như vậy.

Input, Output và Subtask

Input

  • Dòng đầu tiên số nguyên dương q (1\le q\le10^5)
  • Gồm q dòng có các số nguyên t,x,y,z (1\le t,x,z,y\le 10^9;z<y)

Output

  • Xuất ra q dòng, mỗi dòng gồm duy nhất 1 số là số chai lớn nhất mua được.

Subtask

  • Subtask 1 (20\% số điểm): q\le 100;1\le t,x,y,z\le 1000.
  • Subtask 2 (30\% số điểm): q\le 1000;1\le t,x,y,z\le 10^6.
  • Subtask 3 (50\% số điểm): Không có giới hạn gì thêm

Example

Test 1

Input
1
30 6 10 8
Output
12

Giúp mẹ (Huế 2024)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: GME.INP
  • Tệp ra: GME.OUT
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

Thời gian (Hà Nội 2023)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: TG.INP
  • Tệp ra: TG.OUT
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

Cà chua (Quảng Trị 2025)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: CAU1.INP
  • Tệp ra: CAU1.OUT
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

Đếm bộ ba (Đắk Lắk 2025)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: BAI5.INP
  • Tệp ra: BAI5.OUT
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

TLEoj Contest #03 - Tam số

i_loveMaiPhuong

Một hôm nào đó, weqd đang làm toán. Thầy của anh ấy rất khó tính, nếu anh ấy làm sai 1 bài thì thầy lại cho anh ấy làm bài khó hơn. Vì lỡ tay viết nhầm dấu, nên kết quả bị sai, nên anh ấy bị thầy bắt làm 1 bài toán khó như sau:

Cho 6 số nguyên dương x_1, x_2, y_1, y_2, z_1, z_2. Nhiệm vụ của bạn là đếm số bộ ba số (a; b; c) với a, b, c thỏa mãn:

  • x_1\le a\le x_2
  • y_1\le b\le y_2
  • z_1\le c\le z_2
  • a(a^2-bc)-b(ac-b^2)-c(ab-c^2)=0

Đáng lẽ anh ấy có thể dùng điện thoại, nhưng máy điện thoại lại hết pin. Lúc này, bạn đang đem máy tính theo, bài này có thể giải nhanh hơn bằng máy tính, hãy giúp anh ấy.

Input, Output và Subtasks

Input
  • Dòng thứ nhất gồm 1 số t là số testcase (1\le t\le 10^5)
  • Sau đó là t dòng, mỗi dòng nhập 6 số x_1, x_2, y_1, y_2, z_1, z_2 (1\le x_1\le x_2\le 10^{18}, 1\le y_1\le y_2\le 10^{18}, 1\le z_1\le z_2\le 10^{18})
Output
  • Xuất ra t dòng, mỗi dòng gồm 1 số tương ứng với kết quả từng testcase.
Scoring
  • Subtask 1 (30\%): 1\le x_1\le x_2\le 10, 1\le y_1\le y_2\le 10, 1\le z_1\le z_2\le 10
  • Subtask 2 (20\%): 1\le x_1\le x_2\le 10^{2}, 1\le y_1\le y_2\le 10^{2}, 1\le z_1\le z_2\le 10^{2}
  • Subtask 3 (30\%): 1\le x_1\le x_2\le 10^{9}, 1\le y_1\le y_2\le 10^{9}, 1\le z_1\le z_2\le 10^{9}
  • Subtask 4 (20\%): Không có ràng buộc gì thêm

Sample

Input
1
3 4 4 4 4 5
Output
1
Note

Chỉ có duy nhất 1 bộ số (4,4,4) thỏa mãn

TLE Speedrun - Tích các tổng

Sunlight
Input và Output
Input
  • Dòng đầu tiên gồm một số nguyên dương N (2 \le N \le 10^3).
  • Dòng tiếp theo gồm N số nguyên dương A_1, A_2, ..., A_N (1 \le A_i \le 10^9).
Output
  • Tích các giá trị A_i + A_j với 1 \le i < j \le n chia lấy dư cho 10^9 + 7.
Sample
Input
3
1 2 3
Output
60