QHHOJ SC 2024 - Premier - Round #1
Điểm: 1000
Gần đây anh đã nghiên cứu(tự nghĩ) một vài mã dữ liệu cho thuật toán mới của anh. Tuy nhiên, một vài chuyên gia nhận định rằng những mã dữ liệu này khá dài dòng và cần được rút gọn bởi vì:
Ngoài việc tối ưu mã dữ liệu này, anh còn quan tâm đến có bao nhiêu cách rút gọn mã dữ liệu. Vì còn bận rộn với rất nhiều thuật toán khác nhau, bạn hãy giúp
thực hiện việc này.- Dòng đầu tiên chứa xâu
mô tả đoạn mã dữ liệu.
- Gồm một số nguyên duy nhất là số cách tối ưu mã dữ liệu (lược bỏ các kí tự ở vị trí khác nhau là cách tối ưu khác nhau).
- Vì kết quả có thể rất lớn nên hãy in ra phần dư khi chia cho
.
- Subtask
( số điểm): Đoạn mã dữ liệu ban đầu đã được tối ưu ( cực kì khủng). - Subtask
( số điểm): Không có giới hạn gì thêm ( vẫn cực kì khủng nhưng muốn đặt ra thách thức cho bạn).
aabb
9
xxzzzz
30
- aabb
a abb- a
a bb - aa
b b a a b b- a
ab b - aab
b a ab b- a
a b b
Điểm: 1500
Thành phố
Tuy nhiên hệ thống giao thông ở đây lại rất nghiêm ngặt. Khi muốn đi từ khu vực này sang khu vực khác, người tham gia giao thông chỉ được di chuyển theo hướng mà mình đang đi(kể cả khi đi vào hay đi ra khỏi thành phố). Có
Nhà lữ hành
rất muốn đi qua thành phố này lại còn muốn sử dụng một lượng ít trạm đổi hướng nhất. Bạn hãy giúp tính toán việc chi tiêu này nhé!Dòng đầu tiên chứa hai số nguyên
, là kích thước của thành phố.Dòng thứ hai chứa số nguyên
là số lượng của trạm đổi hướng. dòng tiếp theo mỗi dòng chứa hai số nguyên , là tọa độ của trạm đổi hướng ( , ).
- Gồm một số nguyên duy nhất là số lượng trạm chuyển hướng ít nhất mà
nếu không thể đi qua thành phố này.
cần dùng để đi qua thành phố này hoặc là
,
- Subtask
( số điểm): , . - Subtask
( số điểm): . - Subtask
( số điểm): , . - Subtask
( số điểm): , . - Subtask
( số điểm): Không có giới hạn gì thêm .
3 5
6
1 3
2 2
2 3
3 2
3 4
2 5
4
Kì thi tốt nghiệp THPT năm 2024 đã trôi qua, báo hiệu sự kết thúc 12 năm học gian nan của lứa 2k6.
đã cùng bạn bè đi Đà Nẵng chơi một chuyến sau những ngày sống cùng sách vở.Trong lúc tắm bồn ở khách sạn,
đã vô tình làm ở lỗ thoát nước mà không hề hay biết, cậu chỉ nhận ra lỗ thoát bị rò rỉ chỉ khi ngâm mình trong bồn tắm tĩnh lặng và đang nghĩ vu vơ về ai đó (hoặc về giáo án thầy Tu mù proxy cùng cô adc xúc tu). Bỗng chốc nảy ra một ý tưởng, cậu thắc mắc liệu rằng có một bồn tắm có rất nhiều vòi nước và lỗ thoát nước cùng mở một lúc thì sau bao lâu, bồn tắm sẽ đầy hoặc cạn nước.Vì quá bận đi chơi (
- Dòng đầu tiên chứa 2 số nguyên
lần lượt là số vòi nước và số lỗ thoát nước. dòng tiếp theo, dòng thứ là thời gian vòi thứ chảy đầy bồn tắm không hở. dòng tiếp theo, dòng thứ là thời gian lỗ thứ rút hết nước trong bồn khi bồn đầy nước.- Dòng cuối cùng chứa một hữu tỉ
là lượng nước hiện tại trong bồn. - Lưu ý:
- Thời gian được cho dưới dạng giờ phút giây, ví dụ
giờ phút giây sẽ được biểu diễn là . Cụ thể hơn ở test ví dụ. - Nếu số hữu tỉ đó vô hạn tuần hoàn thì sẽ được cho dưới dạng như sau: Ví dụ
trong đó chính là phần tuần hoàn.
- Thời gian được cho dưới dạng giờ phút giây, ví dụ
- Dòng đầu tiên in ra
hoặc khi mực nước trong bồn đầy hoặc cạn sau một khoảng thời gian. - Dòng tiếp theo in ra một chuỗi ký tự có dạng
trong đó là số giờ để bồn đầy nước hoặc cạn nước dưới dạng phân số tối giản.
2 3
7h30m0s
5h0m0s
10h0m0s
15h37m30s
7h48m45s
0.05(63)
FULL
7785/341
- Thời gian của các vòi nước và lỗ thoát luôn bé hơn
giờ. . .
- Subtask
: Thời gian của tất cả vòi và lỗ đều bằng nhau và đều có số phút, số giây bằng ; . - Subtask
: Thời gian của tất cả vòi bằng nhau, thời gian của tất cả lỗ bằng nhau. - Subtask
: Dữ liệu đảm bảo . - Subtask
: Không có ràng buộc gì thêm.
Điểm: 3000
Ông Q (
sau này) là một nhà du hành thời gian vĩ đại, sở hữu cho mình một cỗ máy thời gian toàn năng có thể thay đổi cả tương lai. Tuy nhiên, ông vẫn gặp khó khăn với công việc, bị deadline dí như bao người khác.Công việc của ông Q là hiệu chỉnh một dãy
Vì dãy số
Dòng đầu tiên gồm 2 số nguyên
và lần lượt là số phần tử của dãy (các phần tử được đánh số từ tới ) và số truy vấn.Dòng tiếp theo chứa
số nguyên lần lượt là phần tử của dãy . dòng tiếp theo, dòng thứ chứa thông tin của truy vấn thứ , một truy vấn có thể là: : hiệu chỉnh tăng các phần tử từ đến lên đơn vị. : tính tổng của dãy con từ đến . : du hành thời gian đến thời điểm sau truy vấn thứ (dữ liệu đảm bảo truy vấn này không thể quay về một truy vấn dạng khác).
- Với mỗi truy vấn dạng
, in ra một số nguyên duy nhất là tổng của dãy con trên một dòng, vì kết quả có thể lớn nên hãy in ra phần dư khi chia cho .
7 6
1 1 1 1 1 1 1
C 2 6 1
C 3 5 1
B 0
S 2 7
B 2
S 2 5
6
11
. . .
Subtask
: Không có truy vấn dạng và , .Subtask
: Không có truy vấn dạng .Subtask
: trong tất cả truy vấn dạng .Subtask
: Không có giới hạn gì thêm.
Ban đầu ông Q có dãy
.Sau truy vấn
, dãy trở thành .Sau truy vấn
, dãy trở thành .Truy vấn
yêu cầu ta du hành thời gian đến thời điểm ban đầu, khi dãy là .Truy vấn
yêu cầu in ra tổng của dãy con từ tới : .Truy vấn
yêu cầu ta du hành về thời điểm sau truy vấn , tức là dãy .Truy vấn cuối cùng yêu cầu in ra tổng của dãy con từ
tới : .
Điểm: 3500
Đây là một bài toán
Trong kỳ thi
Phép
a | b | |
---|---|---|
Bạn hãy giúp
thực hiện nhiệm vụ này.Thí sinh cần cài đặt hàm sau:
void solve(int n);
Sau khi thực hiện hàm solve
thì vị trí
Ngoài ra thí sinh có thể gọi tới hàm sau đây một số lần tùy ý:
void nandbit(int i, int j, int k);
Hàm nãy sẽ thực hiện phép gán
Lưu ý: file của thí sinh cần phải cài đặt mà không có hàm main
, phải khai báo thư viện #include "apiodream.h"
và tuyệt đối không được tương tác với luồng ra vào chuẩn.
Với mỗi test:
- Nếu dãy
sau khi thực hiện không đúng với yêu cầu hoặc bạn tương tác với luồng ra vào chuẩn hoặc bạn gọi hàmnandbit
sử dụng các tham số không hợp lệ, bạn sẽ nhận được điểm test đó và bị bonk đầu. - Nếu dãy
sau khi thực hiện đúng chính xác với yêu cầu, bạn sẽ nhận được điểm test đó và bị bonk đầu.
.
apiodream.h
#include <bits/stdc++.h>
void solve(int n);
void nandbit(int i, int j, int k);