# Cú pháp mới cho input/output mẫu của test case trong đề bài markdown trên nền tảng TGBOJ
Author: Đoàn Ngọc Bình Minh
## Sự khác biệt với input/ouput mẫu trước đó
- Lúc trước, input/output của đề bài được biễu diễn dưới dạng code-block của markdown.
<img src="https://hackmd.io/_uploads/r1Mx7TVnp.png" />
- Bây giờ, TGBOJ đã hỗ trợ trình chiếu test mẫu trực quan và rõ ràng hơn.

## Cú pháp cho giao diện test mẫu mới của TGBOJ
- Để có thể biễu diễn test mẫu trực quan hơn qua giao diện mới. Cú pháp của giao diện này được thể hiện qua các cặp thẻ `<testlist>`, `<test>`, `<inp>`, `<out>`, `<note>` được tích hợp ngay bên trong file markdown của đề bài.
- Định nghĩa các cặp thẻ:
- `<testlist>` là cặp thẻ bao hàm tất cả các test mẫu. Một file markdown đề bài chỉ được phép có một cặp thẻ `<testlist>`, cặp thẻ này sẽ bao hàm các thẻ `<test>`.
- `<test>` là cặp thẻ xác định một bộ test. Cặp thẻ này có thể có xuất hiện nhiều lần, nhưng chỉ được phép xuất hiện bên trong cặp thẻ `<testlist>`.
- Các thẻ `<inp>`, `<out>`, `<note>` là các thẻ thể hiện input, output và note cho test case đó. Các thẻ này chỉ được phép xuất hiện bên trong thẻ `<test>` và không bắt buộc phải có. Ví dụ như một test case chỉ có input và output, thì không cần thêm thẻ `<note>` vào. Với những bài không có input hoặc output, thẻ `<inp>` hoặc `<out>` cũng có thể không cần xuất hiện.
- Cấu trúc của một bộ test mẫu sẽ như sau:
```
<testlist> // đánh dấu bộ test
<test> // test số 1
<inp>
Input của test 1
</inp>
<out>
Output của test 1
</out>
<note>
Note của test 1
</note>
</test>
<test> // test số 2
<inp>
Input của test 2
</inp>
<out>
Output của test 2
</out>
</test>
</testlist>
```

## Ví dụ một đề bài markdown với giao diện test mẫu mới
- Đoạn markdown sau được lấy từ bài [A Plus B](https://oj.giftedbat.edu.vn/problem/aplusb).
- 
- 