Điều hướng chính

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập

Bài được chọn theo nhịp luyện tập của bạn, cùng mọi bài mới vừa lên.

root

Thứ tự trong bảng chữ cái

100 điểm

Khi sắp xếp bảng chữ cái tiếng Anh, ta có 'A' là chữ đầu tiên, 'B' là chữ thứ hai, v.v.
Hãy viết chương trình nhập vào một chữ cái và cho biết nó đứng thứ mấy trong bảng chữ cái.

Yêu cầu:
Tính thứ tự (từ 1 đến 26) của chữ cái trong bảng chữ cái Anh, không phân biệt chữ hoa hay thường.

Input

Một ký tự chữ cái \(c\).

Output

Một số nguyên duy nhất là thứ tự của \(c\).

Example

Test 1

Input
a
Output
1

Test 2

Input
A
Output
1

Test 3

Input
b
Output
2

Test 4

Input
B
Output
2

root

Bài tập về nhà 5

100 điểm

Nhập vào ba số nguyên a, b, c. Nếu a != b và b != c thì in ra "YES" ngược lại in ra "NO".

Example

Test 1

Input
3 5 6
Output
YES

Test 2

Input
9 5 8
Output
YES

root

Bảng số

100 điểm

Bạn được cho một bảng số gồm \(n\) hàng và \(m\) cột. Trong mỗi ô của bảng, bạn được điền một con số từ \(1\) đến \(k\). Tuy nhiên có ràng buộc đặc biệt là trong mỗi hàng và mỗi cột của bảng thì phải chứa ít nhất \(1\) ô được điền số \(1\).

Nhiệm vụ của bạn là đếm số cách điền bảng trên sao cho thỏa mãn ràng buộc.

Input

  • Dòng đầu tiên chứa ba số nguyên \(n, m, k\) \((1 \leq n, m \leq 1000, 1 \leq k \leq 10^9)\), lần lượt là số hàng, số cột và số con số có thể sử dụng để điền vào bảng.

Output

In ra số cách điền bảng trên. Vì kết quả có thể rất lớn, in ra đáp án khi chia dư cho \(10^9 + 7\).

Example

Test 1

Input
2 2 3
Output
17

Test 2

Input
3 4 3
Output
101089

Scoring

  • Có \(20\%\) số điểm ứng với \(n \times m \le 20\).
  • Có \(30\%\) số điểm ứng với \(n, m \le 500\).
  • Có \(50\%\) số điểm ứng với \(n, m \le 1000\).

root

Rút thăm trúng thưởng

100 điểm

Bờm tham gia trò chơi rút thăm trúng thưởng trong đêm hội Trăng rằm. Ban tổ chức chuẩn bị \(k\) loại thẻ bài, các loại thẻ bài tương ứng ghi các giá trị từ \(1\) đến \(k\), các thẻ được sắp xếp vào trong \(2\) chiếc hộp như sau:

  • Hộp thứ nhất: chỉ chứa các loại thẻ bài có giá trị là số lẻ trong khoảng từ \(1\) tới \(k\), số lượng mỗi loại thẻ không giới hạn.
  • Hộp thứ hai: chỉ chứa các loại thẻ bài có giá trị là số chẵn trong khoảng từ \(1\) tới \(k\), số lượng mỗi loại thẻ không giới hạn.

Theo thể lệ của Ban tổ chức, một người chơi sẽ được thực hiện \(n\) lần rút thẻ. Các lượt rút thẻ theo thứ tự bắt đầu từ hộp thứ nhất tới hộp thứ hai và lặp lại quá trình đó.

Ví dụ: \(k = 4, n = 3\)

  • Lượt thứ nhất: Người chơi rút thẻ trong hộp thứ nhất có thể nhận được các thẻ bài có giá trị \(1\) hoặc \(3\).
  • Lượt thứ hai: Người chơi rút thẻ trong hộp thứ hai có thể nhận được các thẻ bài có giá trị \(2\) hoặc \(4\).
  • Lượt thứ ba: Người chơi rút thẻ trong hộp thứ nhất có thể nhận được các thẻ bài có giá trị \(1\) hoặc \(3\).

Ban tổ chức đưa ra một con số \(m\) và người chơi sẽ nhận được quà nếu tổng số thẻ sau \(n\) lần rút là một số chia hết cho \(m\).

Yêu cầu: Hãy tính giúp Bờm xem có bao nhiêu cách rút ra các thẻ bài để có thể nhận được thưởng.

Input

Một dòng chứa ba số nguyên dương \(n, k, m\) \((2 \le n, k \le 10^9, m \le 100)\).

Output

Ghi ra một số nguyên dương là số cách rút thẻ thỏa mãn yêu cầu của Ban tổ chức. Vì kết quả rất lớn nên chỉ cần đưa ra phần dư của đáp án khi chia cho \(123456789\).

Example

Test 1

Input
3 4 4
Output
4

Test 2

Input
3 2 4
Output
1

Scoring

  • Subtask 1 (20%): \(n, k \leq 1000\).
  • Subtask 2 (30%): \(m\) lẻ, \(n \leq 10^3\).
  • Subtask 3 (30%): \(n \leq 10^3\).
  • Subtask 4 (20%): Không có ràng buộc gì thêm.
Xem thêm