| # | Bài tập | Điểm | Thời gian: | Giới hạn bộ nhớ |
|---|---|---|---|---|
| 1 | Nửa số tuổi | 100 (p) | 1.0s | 256M |
| 2 | Thang máy tự hành | 100 (p) | 1.0s | 256M |
| 3 | Chặt nhị phân | 100 (p) | 1.0s | 256M |
| 4 | Xoá hai ký tự | 100 (p) | 1.0s | 256M |
Tade và Tade2 là hai anh em. Năm nay, Tade lên \(A\) tuổi và Tade2 lên \(B\) tuổi. Hỏi, sau bao nhiêu năm thì số tuổi của Tade2 bằng một nửa số tuổi của Tade? Nếu điều này không thể xảy ra, in ra NO.
NO.Test 1
9 1
7
Sau \(7\) năm, Tade được \(9 + 7 = 8\) tuổi, Tade2 được \(1 + 7 = 16\) tuổi. Khi đó tuổi của Tade2 bằng một nửa tuổi của Tade.
Test 2
4 2
0
Hiện tại Tade2 đã bằng một nửa tuổi của Tade (\(2 = 4 / 2\)), nên số năm cần tìm là \(0\).
Test 3
8 10
NO
Tade vừa nhận việc tại Khách sạn Hilbert, đảm nhận việc vận chuyển hành lý giữa vô hạn các căn phòng và vô hạn các tầng của khách sạn. Một ngày nọ, khi đang đi giao hành lý, Tade bước vào thang máy để di chuyển giữa các tầng. Không may, ngay khi cửa đóng lại, hệ thống điều khiển gặp sự cố. Thay vì nhận lệnh từ người dùng, chiếc thang máy bắt đầu tự di chuyển theo một quy luật kỳ lạ:
Ban đầu, thang máy đứng ở tầng \(0\). Ở bước thứ \(i\) \((i \ge 1)\), thang máy sẽ cố gắng đi xuống \(i\) tầng, nếu tầng đó âm hoặc thang máy đã từng ghé qua tầng đó trước đây thì thang máy sẽ đổi ý và đi lên \(i\) tầng (dữ liệu đảm bảo thang máy sẽ không bao giờ đi lên tầng đã đi qua).
Lo lắng không biết mình sẽ bị đưa tới đâu, Tade muốn biết sau đúng \(n\) bước di chuyển, thang máy sẽ dừng ở tầng nào.
Test 1
6
13
Quá trình di chuyển:
Vì vậy sau 6 bước, Tade đang ở tầng \(13\).
Cho một chuỗi nhị phân \(s\). Hãy cắt \(s\) thành ít đoạn nhất sao cho sau khi cắt, các đoạn có thể nối lại với nhau (theo thứ tự nào đó) để tạo ra một chuỗi nhị phân đã được sắp xếp.
Lưu ý:
Một chuỗi nhị phân là chuỗi chỉ gồm hai ký tự 0 và 1. Một chuỗi nhị phân đã được sắp xếp là chuỗi mà mọi ký tự 0 đều đứng trước mọi ký tự 1.
0 và 1, trong đó \(|s|\) biểu thị độ dài của chuỗi \(s\).0 hoặc toàn 1.111000 hoặc 000111).Test 1
6
11010
00000000
1
10
0001111
0110
3
1
1
2
1
2
01.Tade có một xâu \(s\) bao gồm các chữ cái Latinh viết thường. Anh ấy quyết định xóa hai ký tự liên tiếp khỏi xâu \(s\) và thắc mắc có bao nhiêu xâu khác nhau có thể nhận được sau thao tác đó.
Ví dụ, Tade có xâu aaabcc. Tade có thể nhận được các xâu khác nhau sau: abcc (bằng cách xóa hai ký tự đầu tiên hoặc ký tự thứ hai và thứ ba), aacc (bằng cách xóa ký tự thứ ba và thứ tư), aaac (bằng cách xóa ký tự thứ tư và thứ năm) và aaab (bằng cách xóa hai ký tự cuối cùng).
Test 1
7
6
aaabcc
10
aaaaaaaaaa
6
abcdef
7
abacaba
6
cccfff
4
abba
5
ababa
4
1
5
3
3
3
1
cdef, adef, abef, abcf, abcd.aba.