Tin học trẻ B - TP Đà Nẵng 2021

Bộ đề bài

# Bài tập Điểm Thời gian: Giới hạn bộ nhớ
1 Dịch cúm (THTB - TP 2021) 100 (p) 1.0s 256M
2 Số giàu có (THTB - TP 2021) 100 (p) 1.0s 256M
3 Cắt dây (THTB - TP 2021) 100 (p) 1.0s 256M
4 Sắp xếp theo Modul K (THTB - TP 2021) 100 (p) 1.0s 1G

1. Dịch cúm (THTB - TP 2021)

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Như chúng ta đã biết dịch cúm toàn cầu COVID-19 do virus Corona nhân bản và lây lan gây hội chứng suy hô hấp cấp tính nặng ở người. Người bệnh ban đầu không nhận biết được đã nhiễm bệnh do virus còn tiềm ẩn chưa khởi phát. Ở đâu đó những con virus đang ẩn mình, chúng ta cùng tìm chúng nhé!

Cho một xâu kí tự \(s\) chỉ chứa các kí tự C, O, R, N, A ở vị trí bất kì. Ta có thể thực hiện hoán đổi các kí tự này để tạo thành những cụm từ CORONA liên tiếp, mỗi cụm từ CORONA tương ứng với một con virus.

Ví dụ: Với xâu kí tự \(s =\) COOCROONRANNA, sau khi thực hiện hoán đổi các kí tự của xâu \(s\) ta được xâu CORONACORONAN có hai cụm từ CORONA tương ứng với hai con virus.

Yêu cầu

Hãy xác định số lượng con virus Corona sau khi thực hiện hoán đổi các kí tự trong xâu \(s\) theo yêu cầu như trên.

Input

  • Một xâu \(s\) chỉ chứa các kí tự C, O, R, N, A và có độ dài \(L\) \((0 < L < 255)\).

Output

  • Ghi ra một số nguyên là số lượng con virus Corona tạo ra sau khi hoán đổi các kí tự trong xâu \(s\).

Example

Test 1

Input
COOCROONRANNA
Output
2

Nguồn: THTB - Cấp TP 2021.

2. Số giàu có (THTB - TP 2021)

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Trong các số tự nhiên lừ 1 đến \(N\), số tự nhiên được gọi là số giàu có nhất nêu nó có tổng các ước lớn nhất trong các số này.

Ví du: Số \(12\) là số giàu có nhất trong các số tự nhiên từ 1 đến 15. (Tổng ước của \(12\) là \(1+2+3+4+6+12 = 28\)).

Yêu cầu: Hãy xác định số giàu có nhất trong các số tự nhiên từ 1 đến \(N\).

Dữ liệu

  • Nhập từ bàn phím một số tự nhiên \(N\ (0 < N < 10^6)\)

Kết quả

  • In ra màn hình số giàu có nhất trong các số tự nhiên từ 1 đến \(N\).

Chú ý: Nếu kết quả có nhiều hơn một số thì in ra sổ nhỏ nhất trong các số đó.

Input

15

Output

12

Giới hạn

  • Có 80% test ứng với \(N < 10^5\);
  • Có 20% test ứng với \(10^5 < N < 10^6\).

Nguồn: THTB - Cấp TP 2021.

3. Cắt dây (THTB - TP 2021)

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Tý muốn cắt một sợi dây có chiều dài \(N\) (mét) thành 3 đoạn dây có chiêu dài mỗi đoạn là số nguyên dương (đơn vị mét) sao cho 3 đoạn dây này là 3 cạnh của một tam gịác cân có cạnh đáy lớn hơn cạnh bên.

Lưu ý: Tam giác cân là tam giác có hai cạnh bằng nhau, hai cạnh bằng nhau gọi là hai cạnh bên, cạnh còn lại gọi là cạnh đáy.

Yêu cầu: Em hãy giúp Tý tính có bao nhiêu cách cắt đoạn dây này.

Dữ liệu

  • Một số nguyên dương \(N\) (\(N< 10^{16}\))

Kết quả

  • Ghi ra số \(M\) là số cách cắt sợi dây theo yêu cầu.

Input

19

Output

2

Giải thích: Có 2 cách cắt sợi dây thành 3 đoạn thỏa mãn đề là: (\(5m; 5m; 9m\)) và (\(6m; 6m; 7m\)).

Lưu ý:: Các cách cắt sợi dây thành 3 đoạn (\(x\) mét; \(x\) mét; \(y\) mét) và các hoán vị của bộ 3 số . (\(x;x;y\)) chì được tính là 1 cách cắt. Chẳng hạn: Cách cắt thành các đoạn (\(5m; 5m; 9m\)) và các hoán vị của nó là (\(5m; 9m; 5m\)) hoặc (\(9m; 5m; 5m\)) chỉ được tính là 1 cách cắt.

Giới hạn

  • Có 20% test ứng với \(N \le 10^2\);
  • Có 30% test ứng với \(10^2 < N \le 10^6\);
  • Có 30% test ứng với \(10^6 < N \le 10^9\);
  • Có 20% test ứng với \(10^9 < N \le 10^{16}\).

Nguồn: THTB - Cấp TP 2021.

4. Sắp xếp theo Modul K (THTB - TP 2021)

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 1G Input: bàn phím Output: màn hình

Từ dãy số tự nhiên \(1; 2; 3; ...; N\) người ta sắp xêp lại dãy số này theo số dư trong các phép chia các số hạng của dãy số cho một số lự nhiên \(K\) là ước nào đó của \(N\) như sau:

  • Đoạn thứ nhất gồm tất cả các số chia hết cho \(K\);
  • Đoạn thứ hai gồm tất cả các sổ chia \(K\) dư 1;
  • Đoạn thứ ba gồm tất cả các số chia \(K\) dư 2;
  • ...
  • Đoạn cuối cùng gồm tất cà các số chia \(K\) dư \(K\) - 1.

Các số hạng trong mỗi đoạn cũng được sắp xếp theo chiêu tăng dần.

Ví dụ: Với \(N = 12\) và \(K = 4\) sau khi sắp xếp ta có dãy số sau: \(4; 8; 12; 1; 5; 9; 2; 6; 10; 3; 7; 11\)

Yêu cầu: Cho trước 3 số nguyên dương \(N; K; M\) (với \(K\) là ước của \(N\) và \(M < N\)). Tìm số hạng thử \(M\) của dãy đã sắp xếp.

Dữ liệu

  • 3 số nguyên dương \(N; K; M\) (\(N \le 10^{16}; K \le 10^9; K\) là ước của $N; M < N) trên cùng một dòng, mỗi số cách nhau một dấu cách.

Kết quả

  • Ghi ra số hạng thứ M của dãy số theo yêu cầu.

Input

12 4 6

Output

9

Giới hạn

  • Có 20% test ứng với \(N \le 10^2\);
  • Có 30% test ứng với \(10^2 < N \le 10^6\);
  • Có 30% test ứng với \(10^6 < N \le 10^9\);
  • Có 20% test ứng với \(10^9 < N \le 10^{16}\).

Nguồn: THTB - Cấp TP 2021.