Đ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.

Dễ

Lộ trình rẻ nhất

100 điểm 100% AC 1 đã giải

staffagent

Một nhà thám hiểm muốn ghé thăm đủ \(N\) thành phố, được đánh số từ \(1\) đến \(N\), bằng đường hàng không. Anh ta được tự do chọn thành phố xuất phát, sau đó bay lần lượt qua các thành phố còn lại sao cho mỗi thành phố được ghé đúng một lần (không cần quay về điểm đầu).

Giá vé bay thẳng từ thành phố \(i\) đến thành phố \(j\) là \(c_{i,j}\) (giá vé chiều đi và chiều về có thể khác nhau). Trong bài này, hãy chỉ ra một hành trình có tổng tiền vé nhỏ nhất.

Nếu có nhiều hành trình cùng có tổng tiền vé nhỏ nhất, hãy in hành trình có thứ tự từ điển nhỏ nhất (so sánh dãy các thành phố theo thứ tự ghé thăm, tại vị trí đầu tiên khác nhau, dãy có số nhỏ hơn được coi là nhỏ hơn).

Input

  • Dòng đầu chứa số nguyên \(N\).
  • \(N\) dòng tiếp theo, dòng thứ \(i\) gồm \(N\) số nguyên \(c_{i,1}, c_{i,2}, \dots, c_{i,N}\).

Output

In ra \(N\) số nguyên trên một dòng, cách nhau một dấu cách: các thành phố theo thứ tự được ghé thăm.

Constraints

  • \(1 \le N \le 16\).
  • \(c_{i,i} = 0\); với \(i \ne j\) thì \(1 \le c_{i,j} \le 10^9\).

Sample Input

5
0 2 9 4 6
3 0 1 7 2
8 5 0 3 1
2 6 4 0 5
7 1 3 2 0

Sample Output

1 2 3 5 4

Explanation

Hành trình \(1 \to 2 \to 3 \to 5 \to 4\) có tổng chi phí \(2 + 1 + 1 + 2 = 6\), đây là mức nhỏ nhất và là hành trình nhỏ nhất theo thứ tự từ điển trong các hành trình tối ưu.

Dễ

Độc nhất

100 điểm 0% AC 0 đã giải

root

Để bảo mật hệ thống, Nam quyết định chỉ sử dụng những mật khẩu là các số nguyên mà mỗi chữ số chỉ xuất hiện đúng một lần. Theo cậu, những mật khẩu như vậy sẽ dễ nhận biết hơn và tránh được các lỗi nhập liệu do lặp chữ số.

Cho hai số nguyên \(L\) và \(R\). Hãy đếm xem có bao nhiêu số nguyên trong đoạn \([L,R]\) có các chữ số đôi một khác nhau.

Lưu ý rằng các số được viết theo cách thông thường, tức là không có các chữ số \(0\) vô nghĩa ở đầu.

\InputFile

Gồm một dòng chứa hai số nguyên \(L\) và \(R\).

Các giá trị thỏa mãn

\[ 1 \le L \le R \le 10^{18}. \]

\OutputFile

In ra số lượng số nguyên trong đoạn \([L,R]\) có các chữ số hoàn toàn phân biệt.

\Examples

\beginexample
\exmp
1 10

10

\endexample

\Note

Trong ví dụ trên, các số từ \(1\) đến \(10\) đều có các chữ số đôi một khác nhau, nên đáp án là \(10\).

\Scoring

  • (30%) \(R \le 10^6\).
  • (30%) \(R \le 10^9\).
  • (40%) Không có ràng buộc bổ sung.

\endproblem

Dễ

Độ xấu nhỏ nhất

100 điểm 0% AC 0 đã giải

root

Cho dãy \(a\) gồm \(n\) phần tử. Đoạn \([l, r]\) của dãy \(a\) là dãy gồm các phần tử liên tiếp \(a_l, a_{l+1}, \ldots, a_r\).

Độ xấu của đoạn \([l, r]\) được định nghĩa là số lượng chỉ số \(i\) thỏa mãn \(l \le i \le r\) sao cho \(a_i \ne i - l + 1\).

Hãy chia dãy \(a\) thành một số đoạn (không giao nhau, mỗi phần tử thuộc đúng một đoạn) sao cho tổng độ xấu của tất cả các đoạn là nhỏ nhất.

Input

  • Dòng đầu tiên chứa số nguyên \(n\) \((1 \le n \le 2 \times 10^5)\) --- độ dài của dãy \(a\).
  • Dòng thứ hai chứa \(n\) số nguyên \(a_1, a_2, \ldots, a_n\) \((1 \le a_i \le n)\) --- các phần tử của dãy.

Output

  • In ra một số nguyên duy nhất --- tổng độ xấu nhỏ nhất có thể đạt được sau khi chia dãy thành các đoạn.

Example

Test 1

Input
5
2 1 3 2 1
Output
2

Scoring

  • Subtask 1 (25 điểm): \(n \le 200\)
  • Subtask 2 (25 điểm): \(n \le 3000\)
  • Subtask 3 (25 điểm): \(a_i \le 200\)
  • Subtask 4 (25 điểm): Không có ràng buộc bổ sung
Dễ

Phà không chung bến

100 điểm 0% AC 0 đã giải

staffagent

Có \(N\) tuyến đò ngang qua sông, tuyến thứ \(i\) nối bến \(x_i\) bờ Bắc với bến \(y_i\) bờ Nam (cùng một trục tọa độ). Lần này quy định an toàn nghiêm hơn: hai tuyến bị coi là xung đột nếu chúng có bất kỳ điểm chung nào, kể cả khi chỉ trùng nhau tại một đầu mút (cùng bến ở một bờ).

Cần ngừng một số tuyến sao cho các tuyến còn lại đôi một không xung đột. Hãy tìm số tuyến ít nhất phải ngừng.

Input

  • Dòng đầu tiên chứa số nguyên \(N\).
  • \(N\) dòng tiếp theo, dòng thứ \(i\) chứa hai số nguyên \(x_i, y_i\).

Output

In ra một số nguyên là số tuyến ít nhất phải ngừng hoạt động.

Constraints

  • \(1 \le N \le 10^5\)
  • \(1 \le x_i, y_i < 10^9\)
  • Các tuyến có thể trùng nhau (khi đó chúng xung đột).

Sample Input

5
1 2
1 5
3 3
4 3
2 4

Sample Output

3

Explanation

Tuyến \((1,2)\) và \((1,5)\) chung bến bờ Bắc; \((3,3)\) và \((4,3)\) chung bến bờ Nam. Số tuyến giữ lại nhiều nhất là \(2\) (ví dụ \((1,2)\) và \((2,4)\)), nên phải ngừng \(3\) tuyến.

Xem thêm