NC251433. 列竖式
描述
小明最近在练习加法,对于没有进位的加法,他能轻易完成。
小明现在想知道对于一个正整数 ,他想找到一个最小的正整数 ,
使得 产生进位。
输入描述
输入共 行。
第一行一个整数表示 。
接下来 行,每行一个整数表示 。
输出描述
输出共 行,表示最小的正整数 。
示例1
输入:
3 114514 1314520 100
输出:
6 80 900
C++(g++ 7.5.0) 解法, 执行用时: 294ms, 内存消耗: 972K, 提交时间: 2023-05-05 19:50:00
#include<bits/stdc++.h> using namespace std; int main() { int t; cin>>t; while(t--) { int a,b=1; cin>>a; while(a%10==0) { a/=10; b*=10; } cout<<(10-a%10)*b<<endl; } }
C++(clang++ 11.0.1) 解法, 执行用时: 271ms, 内存消耗: 1560K, 提交时间: 2023-05-29 21:54:10
#include<bits/stdc++.h> using namespace std; int t,a,ans; int main() { for(cin>>t;cin>>a;) { for(ans=1;a%10==0;a/=10,ans*=10); cout<<(10-a%10)*ans<<"\n"; } }
pypy3 解法, 执行用时: 707ms, 内存消耗: 29512K, 提交时间: 2023-05-07 10:15:08
for _ in range(int(input())): a, b = int(input()), 1 while a % 10 == 0: a //= 10 b *= 10 print(b * (10 - a % 10))
Python3 解法, 执行用时: 1403ms, 内存消耗: 5480K, 提交时间: 2023-05-06 13:32:56
for _ in range(int(input())): x = int(input()) 指数 = 0 while x%10**指数==0: 指数 += 1 print(10**指数-x%10**指数)