Đ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

Thao tác bit: Set, Clear, Toggle

100 điểm

Viết chương trình nhập vào một số nguyên không âm \(N\) (\(0 \leq N \leq 10^9\)) và một số nguyên dương \(i\) (\(0 \leq i \leq 30\)). Thực hiện 3 thao tác:

  • Đặt (set) bit thứ \(i\) của \(N\) thành 1.
  • Xóa (clear) bit thứ \(i\) của \(N\) thành 0.
  • Đảo (toggle) bit thứ \(i\) của \(N\).

In ra kết quả của từng thao tác trên các dòng khác nhau.

Input

  • Dòng đầu tiên chứa số nguyên \(N\).
  • Dòng thứ hai chứa số nguyên \(i\).

Output

Ba dòng, lần lượt là kết quả của 3 thao tác: set, clear, toggle.

Example

Test 1

Input
5
2
Output
5
1
1

root

Khám phá đảo động vật

100 điểm

Trong một chuyến phiêu lưu, bạn tình cờ khám phá ra một hòn đảo bí ẩn nơi các loài động vật sinh sống. Đảo này được phân chia thành nhiều khu vực khác nhau, mỗi khu vực có thể nối với một hoặc nhiều khu vực khác thông qua các con đường. Mỗi con đường có độ dài khác nhau và có thể là một chiều hoặc hai chiều.

Từ khu vực đầu tiên trên đảo, bạn muốn tìm ra con đường nhanh nhất để đến khu vực cuối cùng, nơi bạn sẽ gặp một loài động vật quý hiếm. Tuy nhiên, bạn cũng muốn biết có bao nhiêu lộ trình ngắn nhất từ khu vực đầu đến khu vực cuối.

Để giúp bạn, bài toán yêu cầu bạn tìm ra độ dài ngắn nhất của con đường và số lượng các con đường ngắn nhất có thể đi từ khu vực đầu tiên đến khu vực cuối cùng.

Input

Dòng đầu tiên chứa hai số nguyên \(N\) và \(M\) (\(1 \leq N \leq 5000, 1 \leq M \leq 31313)\), tương ứng với số lượng khu vực và số lượng con đường trên đảo.

M dòng tiếp theo mô tả các con đường nối các khu vực. Mỗi con đường được mô tả bằng 4 số nguyên \(K, U, V, L\):

  • Nếu \(K = 1\), con đường là một chiều từ \(U\) đến \(V\) có độ dài \(L\).

  • Nếu \(K = 2\), con đường là hai chiều nối \(U\) với \(V\) có độ dài \(L\) (tức là có đường đi từ \(U\) đến \(V\) và ngược lại).

Output

In ra hai số nguyên:

  1. Độ dài ngắn nhất của con đường từ khu vực đầu tiên đến khu vực cuối cùng.

  2. Số lượng các con đường ngắn nhất có thể đi từ khu vực đầu tiên đến khu vực cuối cùng.

Example

Test 1

Input
3 2
1 1 2 3
2 2 3 1
Output
4
1

root

5 ký tự cuối cùng

100 điểm

Cho một xâu \(s\) có độ dài ít nhất 5, hãy in ra 5 ký tự cuối cùng của xâu.

Yêu cầu:
In ra xâu con gồm 5 ký tự cuối.

Input

Xâu \(s\) với \(|s| \ge 5\).

Output

Chuỗi có 5 ký tự cuối cùng.

Example

Test 1

Input
nqcodingclass
Output
class

root

Benny

100 điểm

Benny là một nhà nghiên cứu động vật và cần đi quan sát \(K\) con chó. Benny sống trên một con đường nằm ngang được đánh dấu theo từng mét với các số liên tiếp \(0, 1, 2, 3, ...\). Benny bắt đầu trong nhà của mình, ở vị trí 0. Có \(N\) con chó trên đường phố. Con chó thứ \(i\) cách nhà Benny trên phố \(P_i\) mét phía bên phải (có thể có nhiều hơn một con chó ở cùng một vị trí).

Các con chó có nhiều màu khác nhau, được biểu thị bằng các số nguyên dương. Con thứ \(i\) có màu \(A_i\).

Nếu Benny đang ở nhà, cô ấy có thể thay đổi màu áo hiện tại của mình. Điều này rất quan trọng vì các con chó rất nhút nhát! Benny chỉ có thể quan sát một con chó nếu cô ấy ở cùng vị trí với con chó đó và mặc áo cùng màu với nó.

Benny mất một giây để di chuyển một mét sang trái hoặc phải trên đường phố. Cô ấy không mất thời gian để thay áo sơ mi hoặc quan sát một con chó.

Yêu cầu: Hãy tính xem Benny cần thời gian ít nhất để quan sát cả \(K\) con chó là bao lâu? Lưu ý rằng cô ấy không cần phải trở về nhà sau khi quan sát xong \(K\) con chó.

Input

Dòng đầu tiên ghi duy nhất một số nguyên \(T\leq 5\) là số lượng trường hợp test. Mỗi nhóm dòng trong số \(T\) nhóm dòng sau bao gồm:

  • Dòng một chứa hai số nguyên dương \(N\) và \(K\) ($ K \leq N \leq 1000$) tương ứng là số lượng con chó trên đường phố và số lượng con chó mà Benny cần quan sát.

  • Dòng thứ hai chứa \(N\) số nguyên dương, số thứ \(i\) là \(P_i\) (\(P_i \leq 10^5\)).

  • Dòng thứ ba chứa \(N\) số nguyên dương, số thứ \(i\) là \(A_i\) (\(A_i \leq 1000\)).

Output

  • Ghi ra \(T\) dòng, mỗi dòng ghi một số là thời gian tối thiểu để Benny quan sát hết \(K\) con chó.

Example

Test 1

Input
1
4 3
1 2 3 4
1 8 1 8
Output
6

Scoring

  • Subtask 1: \(N \leq 50\).

  • Subtask 2: \(N \leq 1000\).

Xem thêm