Point: 100.0
Time limit: 1.0s
Memory limit: 342 M
Input: stdin
Output: stdout
Author:  
Problem types
Ngôn ngữ cho phép
C, C#, C++, Java, Pascal, Python, Text

Yêu cầu

Bạn được cung cấp một số nguyên dương \(x\). Hãy tìm số nhỏ nhất sao cho tổng chữ số của số đó bằng \(x\) và các chữ số của nó đôi một khác nhau(duy nhất).

Dữ liệu

  • Dòng đầu tiên ghi số nguyên dương \(t\ (t \leq 50)\) là số testcase.
  • Mỗi testcase chứa một số nguyên \(x (1 \leq x \leq 50).\)

Kết quả

In ra số nhỏ nhất thỏa mãn yêu cầu bài toán ứng với mỗi testcase, nếu không có số nào thỏa mãn thì in ra \(-1.\)

INPUT

4
1
5
15
50

OUTPUT

1
5
69
-1