考虑构造数位为1234567890x的数,这个数一定能被x整除。
整除后的数作为y即可。
例如:x = 50 , x * y = 1233456789050 那么 y = 2469135781
数字比较大,C++/Java记得开long long
t = int(input())
for i in range(t):
    x = int(input())
    s = "1234567890" + str(x)
    y = int(s) // x 
    print(y)
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int t = scanner.nextInt();
        for (int i = 0; i < t; i++) {
            long x = scanner.nextLong();
            String s = "1234567890" + x;
            long y = Long.parseLong(s) / x;
            System.out.println(y);
        }
        scanner.close();
    }
}
#include <iostream>
#include <string>
using namespace std;
int main() {
    int t;
    cin >> t;
    while (t--) {
        long long x;
        cin >> x;
        string s = "1234567890" + to_string(x);
        long long y = stoll(s) / x;
        cout << y << endl;
    }
    return 0;
}
OJ会员可以通过点击题目上方《已通过》查看其他通过代码来学习。
小明认为一个整数是完美数,当且仅当这个数字上的数位包含0~9的所有数字。
小明有一个整数x,他希望你帮他构造一个大于x的整数y,使得x×y是一个完美数。
每个测试文件均包含多组测试数据。第一行输入一个整数T(1≤T≤1000)代表数据组数,每组测试数据描述如下:
在一行上输入一个整数x(1≤x≤108)代表小明的初始数字。
对于每一组测试数据,在一行上输出一个整数y代表答案。你需要保证x<y≤2×1010 。
如果存在多个解决方案,您可以输出任意一个,系统会动判定是否正确。
注意,自测运行功能可能因此返回错误结果,请自行检查答案正确性。
输入
2
500
63
输出
18469033416
1994203