Bộ số hoàn hảo

flo

Just a random problem ...

Như chúng ta đã biết, số nguyên dương \(n\) là số hoàn hảo khi và chỉ khi tổng các ước nguyên dương của \(n\)\(2\times n\). Một vài số hoàn hảo đầu tiên là:

  • Số \(6\)\(1 + 2 + 3 + 6 = 2 \times 6\).
  • Số \(28\)\(1 + 2 + 4 + 7 + 14 + 28 = 2 \times 28\).
  • \(...\)

Cho dãy \(a\) gồm \(n\) phần tử, một bộ số \((i_1, i_2, ..., i_k)\) được gọi là hoàn hảo nếu:

  • \(1 \le i_1 < i_2 < ... < i_k \le n\) \((1 \le k \le n)\).
  • \(a_{i_1}\times a_{i_2}\) \(\times\) \(...\) \(\times\) \(a_{i_k}\) là một số hoàn hảo.

Với dãy \(a\) đã cho, nhiệm vụ của bạn là đếm số lượng bộ số hoàn hảo của nó.

Input, Output and Scoring

Input
  • Số nguyên dương \(n\) \((1 \le n \le 2^{20}-1)\).
  • Dãy \(a\) gồm \(n\) phần tử \(a_1, a_2, ..., a_n\) \((1 \le a_i \le 2^{128}-1)\).
Output
  • In ra kết quả sau khi chia lấy dư cho \(1234567891\).
Scoring
  • Subtask \(1\) \((8\%)\): \(n = 1; 1 \le a_i \le 2^{42}-1\).
  • Subtask \(2\) \((10\%)\): \(1 \le n, a_i \le 2^3-1\).
  • Subtask \(3\) \((12\%)\): \(n = 1\).
  • Subtask \(4\) \((14\%)\): \(1 \le n \le 20\).
  • Subtask \(5\) \((16\%)\): \(1 \le n \le 40\).
  • Subtask \(6\) \((18\%)\): \(1 \le n \le 2^{10}-1\).
  • Subtask \(7\) \((22\%)\): Không giới hạn gì thêm.

Test

Input
5
4 7 6 1 3
Output
4
Note
  • \(4\) bộ số hoàn hảo là \((1, 2), (1, 2, 4), (3)\)\((3, 4)\).

Nguồn: Từ đâu đó ở TLEoj

...Xem thêm

LQDOJ Contest #7 - Bài 1 - FOS League

_minhduc , shiba

_minhduc - không gia đình, không người thân, không bạn bè. Đó là một quá khứ u buồn của cậu ấy. Do hoàn cảnh đặc biệt đó nên đã sinh ra một con người với tính cách khá giống các nhân vật "phản diện" trong các bộ phim hoạt hình. Tình cờ một ngày gặp được shiba, một con người cũng giống như _minhduc nhưng lại có một cô bạn gái rất xinh đẹp. Trùng hợp là shiba lại đồng ý làm bạn với _minhduc, từ đó câu chuyện của chúng ta bắt đầu.

Như các bạn đã biết, _minhduc là một người nghiện máy tính, cụ thể là nghiện ba thứ: nghiện code, nghiện trò chơi điện tử, nghiện phim hoạt hình. Trong các trò chơi điện tử mà _minhduc từng chơi qua, cậu ấy tâm đắc nhất với hai trò chơi, đó là hai trò chơi A của nhà G và V của nhà R. Kĩ năng của cậu ấy có thể nói là thượng thừa ở cả hai trò chơi này.

Trùng hợp thay, shiba đang có ý định thành lập đội tuyển thể thao điện tử Esports và cần người thành thạo trong hai trò chơi này. Do kĩ năng thượng thừa của _minhduc, cậu ấy quen khá nhiều người chơi giỏi. Cậu ấy có \(n\) người bạn, những người bạn đó đều chơi cả hai trò chơi trên, khi được _minhduc mời để giới thiệu vào đội tuyển, họ đều đồng ý.

Có thể biểu diễn mức độ kĩ năng của một người chơi dưới dạng một số nguyên dương \(a\). Trong biểu diễn ở hệ nhị phân của số nguyên \(a\) này gồm \(20\) bit (nếu không đủ \(20\) bit thì ta thêm các bit \(0\) vào bên trái sao cho đủ \(20\) bit). Sau đó, số này được chia thành hai phần, một phần gồm \(10\) bit bên trái và một phần gồm \(10\) bit bên phải. Phần \(10\) bit bên trái được đưa về hệ thập phân và đó là mức độ kĩ năng ở tựa game A của người này, coi là \(x\). Phần \(10\) bit bên phải cũng được đưa về hệ thập phân và đó là mức độ kĩ năng ở tựa game V của người này, coi là \(y\). Mỗi người chơi đều có một số nguyên biểu diễn mức độ kĩ năng của người đó. Độ chênh lệch kĩ năng giữa hai người \(i\)\(j\) bằng \(\max(|x_{i}-x{j}|,|y_{i}-y_{j}|)\). Độ chênh lệch kĩ năng của \(k\) người bất kì bằng giá trị lớn nhất của độ chênh lệch kĩ năng giữa hai người bất kì trong \(k\) người này.

shiba khi này cần chọn lấy \(k\) thành viên để tham gia giải vô địch Flower_On_Stone League. Tuy nhiên, để có thể giao tiếp tốt hơn, cậu ấy quyết định chọn các thành viên sao cho độ chênh lệch kĩ năng giữa \(k\) thành viên là nhỏ nhất có thể, như vậy họ mới hiểu ý nhau. _minhduc quyết định sẽ cài một chương trình để tính toán việc này, thế nhưng Macbook M2 Pro của cậu ấy đang bị hỏng và phải đem đi sửa chữa. Bạn hãy giúp cậu ấy nhé ~(để cậu ấy còn lấy được sự tin tưởng của shiba để còn thực hiện bước tiếp theo của kế hoạch chứ muahahahaha)~.

Yêu cầu: Đưa ra một số nguyên dương duy nhất là độ chênh lệch kĩ năng nhỏ nhất có thể.

Input

  • Dòng thứ nhất chứa một số nguyên dương \(\phi\) - số thứ tự của subtask chứa test đó \((1 \le \phi \le 6)\).
  • Dòng thứ hai chứa hai số nguyên dương \(n,k\) (\(1 \le n \le 10^5, 1 \le k \le n\)).
  • Dòng thứ ba chứa \(n\) số nguyên dương \(a_{1},a_{2},...,a_{n}\) (\(1 \le a_i \le 2^{20}-1\)).

Output

  • Gồm một dòng chứa một số nguyên duy nhất là kết quả bài toán.

Scoring

  • Subtask \(1\) (\(10\%\) số điểm): \(n = k\).
  • Subtask \(2\) (\(10\%\) số điểm): \(1 \le k \le n \le 20\).
  • Subtask \(3\) (\(15\%\) số điểm): \(0 \le a_{i} \le 1023\).
  • Subtask \(4\) (\(15\%\) số điểm): \(0 \le x_{i}, y_{i} \le 50\).
  • Subtask \(5\) (\(20\%\) số điểm): \(0 \le x_{i}, y_{i} \le 200\).
  • Subtask \(6\) (\(30\%\) số điểm): không có ràng buộc gì thêm.

Example

Test 1

FOSLEAGUE.INP
1
3 3
1 2 3
FOSLEAGUE.OUT
2
...Xem thêm

[Python_Training] Bài toán AFC

jumptozero
  • Cho \(3\) số nguyên \(A,F,C\).

Yêu cầu: Tìm số \(B\) nhỏ nhất thỏa mãn những điều kiện sau:

  • \(B>A\)
  • Số lần xuất hiện chữ số \(C\) trong \(B\) đúng bằng \(F\)

Input

  • Một dòng duy nhất chứa \(3\) số nguyên \(A,F,C(1\le A\le 10^{17}-1 ; 1\le F\le 17 ; 0\le C\le 9)\)

Output

  • In ra số \(B\) cần tìm

Example

Test 1

Input
7 1 7
Output
17

Test 2

Input
12 2 1
Output
101
...Xem thêm

Ước tự nhiên (QNOI 2020)

BichSonNhat

Một số tự nhiên \(N\), nếu tồn tại \(2\) số tự nhiên \(a\)\(b\) sao cho \(N = a × b\), thì \(a\)\(b\) là các ước tự nhiên của \(N\).

Yêu cầu: Cho 2 số tự nhiên \(x\)\(y\) \((x \le y)\). Hãy tính số lượng và tổng các ước tự nhiên của các số tự nhiên trong đoạn \([x,y]\).

Input

  • Dòng đầu tiên ghi số nguyên dương \(T\) là số bộ dữ liệu;

  • \(T\) dòng tiếp theo, mỗi dòng chứa \(2\) số tự nhiên \(x, y\) tương ứng với \(1\) bộ dữ liệu.

Output

  • Gồm \(T\) dòng, mỗi dòng ghi hai số nguyên \(U\)\(S\) lần lượt là số lượng và tổng các ước tự nhiên tương ứng với dữ liệu vào.

Scoring

  • Subtask \(1\) (\(40\%\) số điểm): \(T \le 10; 1 \le x \le y \le 10 ^ 3\);
  • Subtask \(2\) (\(30\%\) số điểm): \(T \le 10; 1 \le x \le y \le 10 ^ 6\);
  • Subtask \(3\) (\(30\%\) số điểm): \(T \le 10 ^ 6; 1 \le x \le y \le 10 ^ 6\).

Example

Test 1

Input
2
1 2
4 5
Output
3 4
5 13
...Xem thêm