QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#279851#6300. Best Carry Player 2forget-star#WA 1ms3620kbC++20906b2023-12-09 10:49:442023-12-09 10:49:44

Judging History

你现在查看的是最新测评结果

  • [2023-12-09 10:49:44]
  • 评测
  • 测评结果:WA
  • 用时:1ms
  • 内存:3620kb
  • [2023-12-09 10:49:44]
  • 提交

answer

#include<bits/stdc++.h>
#define int long long
#define fr(i,a,b) for(int i(a),end##i(b);i<=end##i;i++)
#define fd(i,a,b) for(int i(a),end##i(b);i>=end##i;i--)
#define mk make_pair
#define pii pair<int,int>
#define fi first
#define se second
#define pb push_back
using namespace std;
int t,x,k;
int p[30],T[30];
int len(int x){
	int s=0;
	while(x){
		s++;
		x/=10;
	}
	return s;
}
signed main(){
#ifdef pig
	freopen("pig.in","r",stdin);
	freopen("pig.out","w",stdout);
#endif
	T[0]=1;
	fr(i,1,20)T[i]=T[i-1]*10;
	cin>>t;
	while(t--){
		scanf("%lld%lld",&x,&k);
		int n=len(x);
		/*if(n<k){
		  cout<<-1<<'\n';
		  continue;
		  }*/
		fr(i,1,n){
			p[i]=x%10;
			x/=10;
		}
		p[n+1]=0;
		int ans=0;

		int pos=0;
		fr(i,k+1,19)if(p[i]!=9){
			pos=i-1;break;
		}
		fr(i,1,k)ans+=T[pos-i]*(9-p[pos-i+1]);
		ans+=T[pos-k];


		cout<<ans<<'\n';
	}
	return 0;
}

詳細信息

Test #1:

score: 100
Accepted
time: 1ms
memory: 3620kb

input:

4
12345678 0
12345678 5
12345678 18
990099 5

output:

1
54322
999999999987654322
9910

result:

ok 4 lines

Test #2:

score: -100
Wrong Answer
time: 0ms
memory: 3496kb

input:

21
999990000099999 0
999990000099999 1
999990000099999 2
999990000099999 3
999990000099999 4
999990000099999 5
999990000099999 6
999990000099999 7
999990000099999 8
999990000099999 9
999990000099999 10
999990000099999 11
999990000099999 12
999990000099999 13
999990000099999 14
999990000099999 15
999...

output:

100000
10000
1000
100
10
1
900001
9900001
99900001
999900001
10000000000
9999910000
9999901000
9999900100
9999900010
9999900001
9000009999900001
99000009999900001
999000009999900001
900000000000000000
1000000000000000000

result:

wrong answer 11th lines differ - expected: '10000000001', found: '10000000000'