QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#42239#163. Change a PasswordzhangchiWA 51ms3776kbC++960b2022-08-01 18:13:142022-08-01 18:13:15

Judging History

This is the latest submission verdict.

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2022-08-01 18:13:15]
  • Judged
  • Verdict: WA
  • Time: 51ms
  • Memory: 3776kb
  • [2022-08-01 18:13:14]
  • Submitted

answer

#include<bits/stdc++.h>
using namespace std;
int n,ans[11],va=0,vb,d=0,nw[11],num[11],nn=1,vans=90000005;
int pos[11];
string s;
void dfs(int t,int nm){
	vb+=pos[t]*nm;
	num[nm]=1;
	nw[t]=nm;
	if(t==n){
		if(d==min(abs(va-vb),nn-abs(va-vb))){
			if(vans>vb){
				vans=vb;
				for(int i=1;i<=n;i++){
					ans[i]=nw[i];
				}
			}
		}
		if(d<min(abs(va-vb),nn-abs(va-vb))){
			d=min(abs(va-vb),nn-abs(va-vb));
			vans=vb;
			for(int i=1;i<=n;i++){
				ans[i]=nw[i];
			}
		}
	}
	else {
		for(int i=9;i>=0;i--){
			if(num[i]==0){
				dfs(t+1,i);
				vb-=pos[t+1]*i;
				num[i]=0;
				nw[t+1]=0;
			}
		}
	}
}
int main(){
	cin>>s;
	n=s.size();
	for(int i=0;i<n;i++){
		va=va*10+s[i]-'0';
		nn*=10;
	}
	pos[0]=0;
	pos[1]=nn/10;
	for(int i=2;i<=n;i++){
		pos[i]=pos[i-1]/10;
	}
	for(int i=9;i>=0;i--){
		dfs(1,i);
		vb-=pos[1]*i;
		num[i]=0;
		nw[1]=0;
	}
	for(int i=1;i<=n;i++){
		printf("%d",ans[i]);
	}
} 

詳細信息

Test #1:

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

input:

201

output:

701

result:

ok single line: '701'

Test #2:

score: 0
Accepted
time: 2ms
memory: 3636kb

input:

512

output:

012

result:

ok single line: '012'

Test #3:

score: 0
Accepted
time: 2ms
memory: 3620kb

input:

99999

output:

49876

result:

ok single line: '49876'

Test #4:

score: 0
Accepted
time: 36ms
memory: 3776kb

input:

765876346

output:

265874931

result:

ok single line: '265874931'

Test #5:

score: 0
Accepted
time: 20ms
memory: 3688kb

input:

15526126

output:

65498732

result:

ok single line: '65498732'

Test #6:

score: 0
Accepted
time: 34ms
memory: 3616kb

input:

596140804

output:

096142357

result:

ok single line: '096142357'

Test #7:

score: 0
Accepted
time: 19ms
memory: 3764kb

input:

12159688

output:

62159703

result:

ok single line: '62159703'

Test #8:

score: 0
Accepted
time: 3ms
memory: 3680kb

input:

259516

output:

759486

result:

ok single line: '759486'

Test #9:

score: 0
Accepted
time: 3ms
memory: 3580kb

input:

646368

output:

146370

result:

ok single line: '146370'

Test #10:

score: 0
Accepted
time: 3ms
memory: 3764kb

input:

901017

output:

401235

result:

ok single line: '401235'

Test #11:

score: 0
Accepted
time: 1ms
memory: 3720kb

input:

390529

output:

890527

result:

ok single line: '890527'

Test #12:

score: 0
Accepted
time: 5ms
memory: 3704kb

input:

5964700

output:

0964712

result:

ok single line: '0964712'

Test #13:

score: 0
Accepted
time: 16ms
memory: 3756kb

input:

32352460

output:

82351976

result:

ok single line: '82351976'

Test #14:

score: -100
Wrong Answer
time: 51ms
memory: 3620kb

input:

4903140382

output:

8493075126

result:

wrong answer 1st lines differ - expected: '9876543210', found: '8493075126'