about summary refs log tree commit diff
path: root/2ndary/10/CSP-KT2/README.md
diff options
context:
space:
mode:
Diffstat (limited to '2ndary/10/CSP-KT2/README.md')
-rw-r--r--2ndary/10/CSP-KT2/README.md164
1 files changed, 164 insertions, 0 deletions
diff --git a/2ndary/10/CSP-KT2/README.md b/2ndary/10/CSP-KT2/README.md
new file mode 100644
index 0000000..33f03f7
--- /dev/null
+++ b/2ndary/10/CSP-KT2/README.md
@@ -0,0 +1,164 @@
+# ĐỀ KIỂM TRA LỚP 10 TIN
+
+Trường ĐHSP Hà Nội - Trường THPT Chuyên
+
+Môn thi: Tin học - Ngày 01/10/2015
+
+Thời gian làm bài: 180 phút
+
+## TỔNG QUAN VỀ ĐỀ THI
+
+|  Bài  | Tên file bài làm | Giới hạn mỗi test | Điểm |
+| :---: | ---------------- | :---------------: | :--: |
+|   1   | `NEGPAIRS.*`     |      0.5 giây     |  100 |
+|   2   | `DCOUNT.*`       |      0.5 giây     |  100 |
+|   3   | `SUMAVR.*`       |      0.5 giây     |  100 |
+|   4   | `ZPAIRS.*`       |      0.5 giây     |  100 |
+|   5   | `HAMMING.*`      |      0.5 giây     |  100 |
+
+Phần mở rộng `*` là PAS hay CPP tùy theo ngôn ngữ và môi trường lập trình (Free
+Pascal hay CodeBlock).
+
+## Bài 1. CẶP SỐ ĐỐI NHAU (NEGPAIRS.*)
+
+Cho dãy số nguyên A = (a<sub>1</sub>, a<sub>2</sub>, ..., a<sub>n</sub>). Hãy
+cho biết có bao nhiêu cặp chỉ số (i, j) trong đó i ≠ j thỏa mãn a<sub>i</sub> =
+−a<sub>j</sub>
+
+**Dữ liệu:** Vào từ thiết bị nhập chuẩn:
+
+* Dòng 1 chứa số nguyên dương n ≤ 10<sup>6</sup>
+* Dòng 2 chứa n số nguyên a<sub>1</sub>, a<sub>2</sub>, ..., a<sub>n</sub> cách
+  nhau bởi dấu cách (∀i: |a<sub>i</sub>| ≤ 100)
+
+**Kết quả:** Ghi ra thiết bị xuất chuẩn một số nguyên duy nhất là số cặp i ≠ j
+thỏa mãn a<sub>i</sub> = −a<sub>j</sub>.
+
+**Ví dụ:**
+
+|       Sample Input        | Sample Output |
+| ------------------------- | :-----------: |
+| 9<br>-3 -2 -1 0 9 0 1 2 3 |       4       |
+| 6<br>0 0 0 0              |       6       |
+
+## Bài 2. THỐNG KÊ (DCOUNT.*)
+
+Cho dãy số nguyên không âm A = (a<sub>1</sub>, a<sub>2</sub>, ...,
+a<sub>n</sub>) gồm n phần tử.
+
+**Yêu cầu:** Hãy đếm số lượng các giá trị khác nhau có trong dãy A và đưa ra số
+lần xuất hiện của phần tử xuất hiện nhiều nhất?
+
+**Dữ liệu:** Vào từ thiết bị nhập chuẩn
+
+* Dòng đầu ghi số n (n ≤ 10<sup>6</sup>)
+* Dòng tiếp theo gồm n số là các phần tử của dãy A, (0 ≤ a<sub>i</sub> ≤
+  10<sup>6</sup>)
+
+**Kết quả:** Ghi ra thiết bị xuất chuẩn gồm 2 số k và t: k là số lượng các giá
+trị khác nhau và t là số lần xuất hiện của phần tử xuất hiện nhiều nhất trong
+dãy đã cho.
+
+**Ví dụ:**
+
+|      Sample Input       | Sample Output |
+| ----------------------- | ------------- |
+| 8<br>11 2 13 4 50 2 2 3 | 6 3           |
+
+*Giải thích: có 6 giá trị khác nhau trong dãy là 2, 3, 4, 11, 13 và 50, số 2
+xuất hiện nhiều nhất là 3 lần.*
+
+## Bài 3. TRUNG BÌNH CỘNG (SUMAVR.*)
+
+Cho dãy số nguyên B = (b<sub>1</sub>, b<sub>2</sub>, ..., b<sub>n</sub>), hãy
+tìm dãy số nguyên A = (a<sub>1</sub>, a<sub>2</sub>, ..., a<sub>n</sub>) sao
+cho ∀i: 1 ≤ i ≤ n trung bình cộng của i phần tử đầu tiên trong dãy A đúng bằng
+b<sub>i</sub>:
+
+a<sub>1</sub> + a<sub>2</sub> + ... + a<sub>n</sub> = b<sub>i</sub> x i, ∀i =
+1, 2, ..., n
+
+**Dữ liệu:** Vào từ thiết bị nhập chuẩn:
+
+* Dòng 1 chứa số nguyên dương n ≤ 10<sup>5</sup>
+* Dòng 2 chứa n số nguyên b<sub>1</sub>, b<sub>2</sub>, ..., b<sub>n</sub> cách
+  nhau bởi dấu cách (∀i: |b<sub>i</sub>| ≤ 10<sup>9</sup>)
+
+**Kết quả:** Ghi ra thiết bị xuất chuẩn n số a<sub>1</sub>, a<sub>2</sub>, ...,
+a<sub>n</sub> theo đúng thứ tự cách nhau bởi dấu cách.
+
+**Ví dụ:**
+
+|  Sample Input  | Sample Output |
+| -------------- | ------------- |
+| 5<br>1 2 2 3 4 | 1 3 2 6 8     |
+
+## Bài 4. GHÉP CẶP (ZPAIRS.*)
+
+Cho hai dãy số A = (a<sub>1</sub>, a<sub>2</sub>, ..., a<sub>n</sub>) và dãy số
+B = (b<sub>1</sub>, b<sub>2</sub>, ..., b<sub>n</sub>) đã được sắp theo thứ tự
+không giảm.
+
+Một phép ghép cặp là phép lấy một phần tử a<sub>i</sub> của dãy A và một phần
+tử b<sub>j</sub> của dãy B thành một cặp (a<sub>i</sub>, b<sub>j</sub>). Chi
+phí của cặp này được tính bằng |a<sub>i</sub> − b<sub>j</sub>|.
+
+**Yêu cầu:** Tính xem có thể ghép tối đa được bao nhiêu cặp sao cho tổng chi
+phí của các cặp = 0. Biết rằng, mỗi phần tử trong A cũng như trong B chỉ được
+ghép vào một cặp duy nhất.
+
+**Dữ liệu:** Vào từ thiết bị nhập chuẩn:
+
+* Dòng 1: 2 số n, m lần lượt là số phần tử của dãy A, B (n, m ≤ 10<sup>5</sup>).
+* Dòng 2: gồm n số nguyên sắp theo thứ tự không giảm là dãy A = (a<sub>1</sub>,
+  a<sub>2</sub>, ..., a<sub>n</sub>), |a<sub>i</sub>| ≤ 10<sup>9</sup>.
+* Dòng 3: gồm m số nguyên sắp theo thứ tự không giảm là dãy B =
+  ,(b<sub>1</sub>, b<sub>2</sub>, ..., b<sub>n</sub>) |b<sub>i</sub>| ≤
+  10<sup>9</sup>.
+
+**Kết quả:** Ghi ra thiết bị xuất chuẩn gồm duy nhất một số k là số cặp ghép
+lớn nhất tìm được thỏa mãn yêu cầu đề bài.
+
+**Ví dụ:**
+
+|        Sample Input         | Sample Output |
+| --------------------------- | ------------- |
+| 4 5<br>1 2 2 3<br>2 3 5 5 5 | 2             |
+
+## Bài 5. DÃY SỐ HAMMING (HAMMING.*)
+
+Dãy số nguyên dương tăng dần trong đó, phần tử đầu tiên là a<sub>1</sub> = 1,
+các phần tử tiếp theo có ước nguyên tố của mỗi số không quá 5 được gọi là dãy
+hamming. Như vậy, 10 = 2 x 5 sẽ là một số trong hãy Hamming, còn 26 = 2 x 13
+không thuộc dãy hamming.
+
+Phần đầu của dãy Hamming là: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, ...
+
+**Yêu cầu:** Cho một dãy gồm n số nguyên a<sub>1</sub>, a<sub>2</sub>, ...,
+a<sub>n</sub> (a<sub>i</sub> ≤ 10<sup>9</sup>). Với mỗi số a<sub>i</sub> hãy
+kiểm tra xem nó có thuộc dãy số Hamming?
+
+**Dữ liệu:** Vào từ thiết bị nhập chuẩn:
+* Dòng đầu là số n (n ≤ 10<sup>5</sup>)
+* n dòng tiếp theo, mỗi dòng ghi một số nguyên của dãy a<sub>1</sub>,
+  a<sub>2</sub>, ..., a<sub>n</sub> (a<sub>i</sub> ≤ 10<sup>9</sup>).
+
+**Kết quả:** Ghi ra thiết bị xuất chuẩn gồm n dòng mỗi dòng gồm YES hoặc NO
+tương ứng với mỗi số a<sub>i</sub> có/không thuộc dãy Hamming.
+
+**Ví dụ:**
+
+| Sample Input | Sample Output |
+| ------------ | ------------- |
+| 11           | YES           |
+| 1            | YES           |
+| 2            | YES           |
+| 6            | NO            |
+| 7            | YES           |
+| 8            | YES           |
+| 9            | YES           |
+| 10           | NO            |
+| 11           | YES           |
+| 12           | NO            |
+| 13           | NO            |
+| 14           |               |