Giải phương trình tổng các ước

View as PDF

Submit solution

Points: 400
Time limit: 2.0s
Memory limit: 162M
Input: stdin
Output: stdout

Author:
Problem types

Kí hiệu \(d(n)\) là tổng các ước nguyên dương của số nguyên dương \(n\), tức là: \(d(n)=\sum\limits_{k|n}k\)

Cho trước số nguyên \(c\), hãy tìm số nguyên dương \(n\) nhỏ nhất thoả mãn: \(d(n)=c\)

Input:

  • Dòng thứ nhất chứa số \(t(1\le t\le 10^4)\) - Thể hiện số lượng testcase

  • \(t\) dòng tiếp theo, mỗi dòng chứa số \(c(1\le c\le 10^7)\)

Output:

  • Ứng với mỗi testcase, in ra số nguyên dương \(n\) thoả mãn yêu cầu bài toán. Nếu không có in ra -1

Ví dụ:

Input 1:

9
11
87
58
92
83
74
7
13
77

Output 1:

-1
-1
-1
-1
-1
73
4
9
-1

Input 2:

6
6
75
89
2
84
70

Output 2:

5
-1
-1
-1
44
-1

View comments (3)

Comments


  • -4
    minhtuanitk20  commented on 10:47 p.m. 22 dec, 2021 edit 3

    .


  • -4
    hongquanyl1  commented on 10:16 p.m. 22 dec, 2021

    ảo thật đấy


  • 10005
    khoa2008  commented on 6:31 p.m. 22 dec, 2021 edit 3

    Hack up vote cho em với

    This comment is hidden due to too much positive feedback. Click here to view it.