Bài tập nâng cao

Bộ đề bài

# Bài tập Điểm Thời gian: Giới hạn bộ nhớ
1 Bài tập nâng cao 1 100 (p) 1.0s 256M
2 Bài tập nâng cao 2 100 (p) 1.0s 256M
3 Bài tập nâng cao 3 100 (p) 1.0s 256M
4 Bài tập nâng cao 4 100 (p) 1.0s 256M
5 Bài tập nâng cao5 100 (p) 1.0s 256M

1. Bài tập nâng cao 1

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

An vừa được học phép tính lũy thừa và biết được rằng \(a^n = a \cdot a \cdot \dots \cdot a\) (\(n\) lần \(a\)). Cô giáo đã cho An một số bài tập trên lớp học trực tuyến để luyện tập tính lũy thừa.

Các bài tập có dạng tính giá trị \(Y = A_1^{X_1} + A_2^{X_2} + \dots + A_N^{X_N}\) với \(A_1, A_2, \dots, A_N\) là các số nguyên dương và \(X_1, X_2, \dots, X_N\) là các số nguyên dương không âm có \(1\) chữ số. An đã thực hiện xong các bài tập và muốn kiểm tra lại đáp án của mình bằng một chương trình toán. Tuy nhiên khi An nhập dữ liệu cho chương trình thì không nhập được số mũ có định dạng chỉ số trên nên chỉ có thể nhập \(Y = P_1 + P_2 + \dots + P_N\), trong đó \(P_i\) có dạng \(A_iX_i\). Ví dụ bài tập khi xem trên lớp học trực tuyến thì biểu thức có dạng \(Y = 2^5 + 3^5 + 10^3 + 215^2\) nhưng khi nhập vào chương trình thì có dạng \(Y = 25 + 35 + 103 + 2152\).

Yêu cầu: Hãy viết chương trình tính giá trị biểu thức là tổng các lũy thừa nhưng biểu thức được nhập như mô tả trên.

Input

  • Dòng đầu gồm một số nguyên \(N\) cho biết số lượng số hạng của biểu thức cần tính.
  • Dòng thứ \(i\) trong \(N\) dòng tiếp theo cho biết số nguyên \(P_i\).

Output

  • Gồm một số là giá trị của biểu thức cần tính, có thể giả sử rằng giá trị các biểu thức luôn nhỏ hơn \(10^9\).

Scoring

  • \(40\%\) số test ứng với \(40\%\) số điểm của bài có \(1 \le N \le 3\) và \(10 \le P_i \le 100\).
  • \(60\%\) số test ứng với \(60\%\) số điểm của bài có \(1 \le N \le 20\) và \(10 \le P_i \le 10000\).

Example

Test 1

Input
4
25
35
103
2152
Output
47500

2. Bài tập nâng cao 2

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

Viết chương trình nhập vào 2 số tự nhiên \(a, b\) (\(1 < a, b < 10^9\)). Tính hiệu của hai số \(a\) và \(b\) và xuất kết quả ra màn hình, với điều kiện hiệu của hai số \(a, b\) không âm.

Input

  • Gồm 2 số nguyên dương \(a, b\) (\(1 \le a, b \le 10^9\)).

Output

  • In ra hiệu của \(a\) và \(b\) sao cho kết quả không âm.

Example

Test 1

Input
500 412
Output
88

Test 2

Input
375 425
Output
50

3. Bài tập nâng cao 3

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

Số \(M\) là ước số chẵn của \(N\) nếu thỏa \(3\) điều kiện sau:

  • Điều kiện 1: \(N\) chia hết cho \(M\)
  • Điều kiện 2: \(M\) là số chẵn
  • Điều kiện 3: \(0 < M < N\)

Viết chương trình nhập từ bàn phím số nguyên dương \(N\) (\(1 < N < 250\)).

Yêu cầu: Tìm và xuất ra màn hình tích các "ước số chẵn" của \(N\).

Input

  • Số nguyên dương \(N\) (\(1 < N < 250\)).

Output

  • In ra đáp án đề bài yêu cầu, nếu không có ước chẵn nào hãy in ra \(0\).

Example

Test 1

Input
16
Output
64
Note

Các "ước số chẵn" của \(16\) là \(2, 4, 8\). Tích tất cả "ước số chẵn" là: \(2 \cdot 4 \cdot 8 = 64\).

4. Bài tập nâng cao 4

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

Một quyển sách gồm \(N\) trang (\(N\) luôn là số chẵn), được đánh số từ \(1\) đến \(N\). Trong đó trang \(1\) luôn nằm phía bên phải của trang bìa đầu, trang \(N\) luôn ở mặt bên trái của trang bìa cuối của quyển sách.

Hôm nay, giáo viên yêu cầu cả lớp lật đến trang \(P\) trong quyển sách, theo tiêu chí sau:

  • Có thể bắt đầu lật từ trang \(1\) hoặc trang \(N\).
  • Mỗi lần chỉ lật một trang, ví dụ bắt đầu lật từ trang \(1\) sau khi lật sẽ đến trang \(2, 3\); lần hai sẽ đến trang \(4, 5 \dots\) Tương tự như vậy, nếu bắt đầu lật từ trang \(N\) sẽ dẫn đến các trang \(N-1, N-2 \dots\)
  • Số lần lật tới trang \(P\) là ít nhất.

Yêu cầu: Viết chương trình trả về kết quả là số lần lật đến trang \(P\) (\(1 < P < N\)) trong quyển sách thỏa tiêu chí trên.

Input

  • Hai số nguyên dương \(N, P\) (\(1 \le N \le 10^{18}\)) nằm trên một dòng cách nhau ít nhất một ký tự trắng.

Output

  • Một số nguyên là kết quả tìm được.

Scoring

  • Có \(75\%\) số test ứng với \(1 < P < N \le 10^9\).
  • Có \(25\%\) số test ứng với \(10^9 < P < N \le 10^{18}\).

Example

Test 1

Input
8 3
Output
1

5. Bài tập nâng cao5

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

Các loài vi khuẩn đơn bào có cơ chế sinh sản vô tính bằng cách tự nhân đôi. Chúng sinh sản rất nhanh, trung bình cứ \(20\) phút chúng sẽ nhân đôi, từ một vi khuẩn sẽ nhân đôi thành hai vi khuẩn. Giả sử ban đầu chỉ có một vi khuẩn, sau lần nhân đôi thứ ba sẽ sinh ra tám vi khuẩn,...

Yêu cầu: Cho một số nguyên dương \(n\), hãy lập trình cho biết sau \(n\) lần nhân đôi, từ một vi khuẩn ban đầu sẽ sinh ra được bao nhiêu vi khuẩn.

Input

  • Một số nguyên dương \(n\) (\(1 \le n \le 50\)).

Output

  • Một số nguyên dương cho biết số lượng vi khuẩn sau \(n\) lần nhân đôi.

Example

Test 1

Input
3
Output
8