Capy Mini Contest 1

Giới hạn thời gian: 1.0s / Giới hạn bộ nhớ: 256M

Điểm: 4

Cho số nguyên dương ~n~. Nhiệm vụ của bạn là xác định xem ~n~ có phải là số nguyên tố hay không. Nếu ~n~ không phải là số nguyên tố, hãy đếm số lượng ước dương của nó.

Dữ liệu vào từ tệp văn bản BAI1.INP có cấu trúc:

  • Dòng đầu tiên chứa số nguyên dương ~t~ (~1 \le t \le 10^5~) là số lượng bộ dữ liệu (test case).
  • ~t~ dòng tiếp theo, mỗi dòng chứa một số nguyên dương ~n~ (~1 \le n \le 10^6~).

Kết quả ghi ra tệp văn bản BAI1.OUT có cấu trúc: Ghi ra ~t~ dòng, mỗi dòng tương ứng với một test case:

  • Nếu ~n~ là số nguyên tố, in ra -1.
  • Nếu ~n~ không phải là số nguyên tố (là hợp số hoặc số 1), in ra số lượng ước dương của ~n~.

BAI1.INP

3
2
4
6

BAI1.OUT

-1
3
4

Giải thích

  • ~n = 2~ là số nguyên tố ~\rightarrow~ In -1.
  • ~n = 4~ không là số nguyên tố, có các ước ~\{1, 2, 4\}~ ~\rightarrow~ In 3.
  • ~n = 6~ không là số nguyên tố, có các ước ~\{1, 2, 3, 6\}~ ~\rightarrow~ In 4.

Ràng buộc:

  • Subtask 1: 40% số điểm có ~n \le 10^3, t \le 100~.
  • Subtask 2: 60% số điểm có ~n \le 10^6, t \le 10^5~.

Giới hạn thời gian: 1.0s / Giới hạn bộ nhớ: 256M

Điểm: 6

Cho dãy số gồm ~n~ số nguyên dương ~a_1, a_2, ..., a_n~.

Yêu cầu: Với mỗi số nguyên ~a_i~, hãy tìm hai số nguyên dương ~x_i, y_i~ (~0 < y_i < x_i~) sao cho: ~x_i^2 - y_i^2 = a_i~.

Dữ liệu vào từ tệp văn bản BAI2.INP có cấu trúc:

  • Dòng 1: chứa số nguyên dương ~n~ (~n \le 100~);
  • Dòng thứ 2: chứa ~n~ số nguyên dương ~a_1, a_2, ..., a_n~ (~1 \le i \le n, a_i \le 10^6~). Các số trên cùng một dòng được ghi cách nhau bởi dấu cách.

Kết quả ghi ra tệp văn bản BAI2.OUT có cấu trúc: Ghi trên ~n~ dòng, dòng thứ ~i~ là đáp án của ~a_i~, cụ thể:

  • Nếu tồn tại bộ số ~x_i, y_i~ thỏa yêu cầu thì ghi ra 2 số nguyên theo thứ tự ~x_i, y_i~ (Nếu tồn tại nhiều bộ số ~x_i, y_i~ thỏa yêu cầu thì ghi ra bộ số có ~x_i~ nhỏ nhất);
  • Ngược lại ghi ra -1.

BAI2.INP

3
15 4 9

BAI2.OUT

4 1
-1
5 4

Ràng buộc:

  • Subtask 1: 50% số test (50% số điểm): ~a_i \le 10^3~;
  • Subtask 2: 50% số test (50% số điểm): ~a_i \le 10^6~.

Giới hạn thời gian: 1.0s / Giới hạn bộ nhớ: 256M

Điểm: 5

Cho xâu ký tự ~s~. Một xâu con được gọi là đối xứng nếu khi đọc từ trái sang phải hay từ phải sang trái đều giống nhau.

Yêu cầu: Hãy đếm số lượng xâu con đối xứng của xâu ~s~.

Dữ liệu vào từ tệp văn bản BAI3.INP có cấu trúc:

  • Một dòng duy nhất chứa xâu ký tự ~s~ (độ dài xâu ~|s| \le 100~).

Kết quả ghi ra tệp văn bản BAI3.OUT có cấu trúc:

  • Một số nguyên duy nhất là số lượng xâu con đối xứng tìm được.

BAI3.INP

aba

BAI3.OUT

4

Giải thích

Các xâu con đối xứng là: "a", "b", "a", "aba".

Ràng buộc:

  • Subtask 1: 70% số điểm ứng với ~|s| \le 50~;
  • Subtask 2: 30% số điểm ứng với ~|s| \le 100~.

Giới hạn thời gian: 1.0s / Giới hạn bộ nhớ: 256M

Điểm: 5

Cho hai dãy số nguyên, mỗi dãy gồm ~n~ số nguyên.

  • Dãy thứ nhất: ~b_1, b_2, \dots, b_n~
  • Dãy thứ hai: ~c_1, c_2, \dots, c_n~

Với mỗi lượt chơi, mỗi bạn đưa ra một số hạng trong dãy số của mình. Nếu bạn thứ nhất đưa ra số hạng ~b_i~ (~1 \le i \le n~) và bạn thứ hai đưa ra số hạng ~c_j~ (~1 \le j \le n~) thì giá của lượt chơi đó được tính là ~|b_i + c_j|~.

Yêu cầu: Hãy xác định giá nhỏ nhất của một lượt chơi trong số tất cả các lượt chơi có thể.

Dữ liệu vào từ tệp văn bản BAI4.INP có cấu trúc:

  • Dòng đầu tiên chứa số nguyên dương ~n~ (~n \le 10^5~);
  • Dòng thứ hai chứa ~n~ số nguyên ~b_1, b_2, \dots, b_n~ (~|b_i| \le 10^9~);
  • Dòng thứ ba chứa ~n~ số nguyên ~c_1, c_2, \dots, c_n~ (~|c_i| \le 10^9~). Các số trên cùng một dòng được ghi cách nhau bởi dấu cách.

Kết quả ghi ra tệp văn bản BAI4.OUT có cấu trúc:

  • Ghi ra một số nguyên duy nhất là giá nhỏ nhất tìm được.

BAI4.INP

2
1 -2
2 3

BAI4.OUT

0

Ràng buộc:

  • Subtask 1: 60% số test (60% số điểm) có ~1 \le n \le 1000~;
  • Subtask 2: 40% số test (40% số điểm) có ~1 \le n \le 10^5~.