TeX Quotes (UVa 272)

codelaca

TeX là ngôn ngữ dàn trang do Donald Knuth phát triển. Nó chuyển đổi văn bản nguồn cùng với một vài lệnh định dạng để tạo nên các tài liệu có hình thức đẹp. Các tài liệu đẹp thường sử dụng dấu ngoặc kép “ ” thay vì dấu " thông thường được cung cấp bởi bàn phím.

Bàn phím thường chỉ có dấu ngoặc kép không định hướng ", nhưng TeX yêu cầu dấu mở và dấu đóng khác nhau:

  • Dấu mở: `` (hai dấu nháy trái)
  • Dấu đóng: '' (hai dấu nháy phải)

Nhiệm vụ của bạn là viết một chương trình chuyển đổi tất cả các dấu ngoặc kép (") trong văn bản sang đúng dạng dấu ngoặc kép của TeX:

  • Dấu " đầu tiên trong cặp được thay bằng ``.
  • Dấu " thứ hai trong cặp được thay bằng ''.

Giả sử rằng trong toàn bộ văn bản, số lượng dấu ngoặc kép " luôn là chẵn và các dấu ngoặc kép sẽ luân phiên nhau mở và đóng.

Input Specification

Gồm nhiều dòng văn bản (có thể chứa dấu ngoặc kép ").
Kết thúc đầu vào bằng EOF (End of File).

Output Specification

In ra văn bản tương tự đầu vào, chỉ khác là:

  • Mỗi dấu " đầu tiên trong cặp được thay bằng hai dấu nháy trái ``.
  • Mỗi dấu " thứ hai trong cặp được thay bằng hai dấu nháy phải ''.

Constraints

  • Dữ liệu đầu vào có thể dài tới \(10^5\) kí tự.
  • Số lượng dấu ngoặc kép " luôn là chẵn.
  • Các ký tự khác (bao gồm ', dấu chấm câu, xuống dòng) giữ nguyên.

Input Sample

"To be or not to be," quoth the Bard, "that is the question".
The programming contestant replied: "I must disagree.
To 'C' or not to 'C', that is The Question!"

Output Sample

``To be or not to be,'' quoth the Bard, ``that is the question''.
The programming contestant replied: ``I must disagree.
To 'C' or not to 'C', that is The Question!''
...More

Dãy con tăng dài nhất

codelaca

Cho một dãy \(n\) số nguyên. Hỏi ta cần xoá đi ít nhất bao nhiêu số hạng để các số còn lại (giữ nguyên thứ tự) tạo thành một dãy số tăng dần (với ít nhất hai số hạng)? Viết chương trình xác định giá trị đó. Nếu không có cách xoá thoả mãn, in ra kết quả là \(-1\).

Input Specification

Gồm hai dòng:

  • Dòng thứ nhất chứa số nguyên dương \(n\),
  • Dòng thứ hai chứa dãy \(n\) số nguyên, hai số liên tiếp ngăn cách nhau bởi một dấu khoảng trắng.

Output Specification

In ra kết quả trên một dòng.

Constraints

  • \(n \leq 10^4\);
  • Mỗi phần tử có giá trị tuyệt đối không quá \(10^6\).

Input Sample

5
1 4 3 2 5

Output Sample

2
...More

Liệt kê dãy nhị phân (1)

codelaca

Viết chương trình liệt kê tất cả các dãy nhị phân đội dài \(n\), theo thứ tự giá trị tăng dần.

Input Specification

Gồm số nguyên dương \(n\) được ghi trên một dòng duy nhất.

Output Specification

In ra lần lượt mỗi dãy nhị phân trên một dòng.

Constraints

\(n \leq 12\)

Input Sample

3

Output Sample

000
001
010
011
100
101
110
111
...More

Tổng các chữ số

codelaca

Viết chương trình tính tổng các chữ số của một số nguyên dương \(n\) cho trước.

Input Specification

Gồm số nguyên dương \(n\) được ghi trên một dòng duy nhất.

Output Specification

In ra kết quả trên một dòng.

Constraints

\(n \leq 10^{12}\)

Input Sample

123456

Output Sample

21
...More