QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#629957#1845. Permutelight_ink_dotsWA 141ms3944kbC++20976b2024-10-11 15:43:462024-10-11 15:43:50

Judging History

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

  • [2024-10-11 15:43:50]
  • 评测
  • 测评结果:WA
  • 用时:141ms
  • 内存:3944kb
  • [2024-10-11 15:43:46]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
const int iv9=4;
int T,m,now,flg;
int c[100],p[100];
int pow10(int n){//10^n mod 7
	int res=1;
	for(int i=1;i<=n%6;i++)
		res=10*res%7;
	return res;
}
int main(){
	scanf("%d",&T);
	while(T--){
		m=now=flg=0;
		for(int i=0;i<=9;i++)
			scanf("%d",&c[i]);
		for(int i=0;i<=9&&m<8;i++)
			while(m<8&&c[i])
				c[i]--,p[++m]=i;
		for(int i=0;i<=9;i++){
			int v=pow10(c[i]);
			now=(now*v+(v-1)*iv9*i)%7;
		}
		now=now*pow10(m)%7;
		do{
			int cur=now;
			for(int i=1;i<=m;i++)
				cur=(cur*10+p[i])%7;
			if(cur==0){
				flg=1,printf("%d\n",10+m);
				int tmp=0;
				for(int i=0;i<=9;i++){
					tmp=(tmp*pow10(c[i])+(pow10(c[i])-1)*iv9*i)%7;
					printf("%d %d\n",c[i],i);
				}
				for(int i=1;i<=m;i++){
					tmp=(tmp*10+p[i])%7;
					printf("1 %d\n",p[i]);
				}
//				assert(tmp==0);
				break;
			}
		}while(next_permutation(p+1,p+1+m));
		if(flg==0)
			puts("-1");
	}
	return 0;
}

詳細信息

Test #1:

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

input:

3
0 1 0 0 1 0 0 0 0 0
0 2 0 0 0 0 1 0 0 1
0 1000000000 0 0 0 0 0 0 0 0

output:

12
0 0
0 1
0 2
0 3
0 4
0 5
0 6
0 7
0 8
0 9
1 1
1 4
14
0 0
0 1
0 2
0 3
0 4
0 5
0 6
0 7
0 8
0 9
1 1
1 1
1 6
1 9
-1

result:

ok T=3

Test #2:

score: -100
Wrong Answer
time: 141ms
memory: 3840kb

input:

100000
0 0 0 1 0 1 1 1 0 1
1 1 0 0 1 0 1 0 1 0
1 1 1 1 0 0 0 1 0 1
0 1 1 0 0 1 1 1 1 0
0 0 1 0 1 0 1 0 1 0
0 1 0 0 0 0 0 1 0 0
1 1 0 0 0 0 0 0 1 1
1 0 1 1 1 0 1 0 0 0
0 1 1 0 0 1 0 1 0 1
1 0 0 1 1 0 0 1 0 0
1 1 0 1 0 0 1 0 1 1
0 0 1 0 0 0 0 1 0 0
0 1 1 1 1 1 1 1 0 1
1 0 0 0 0 1 0 0 0 1
0 0 0 0 1 0 1...

output:

15
0 0
0 1
0 2
0 3
0 4
0 5
0 6
0 7
0 8
0 9
1 3
1 5
1 6
1 7
1 9
15
0 0
0 1
0 2
0 3
0 4
0 5
0 6
0 7
0 8
0 9
1 0
1 4
1 1
1 8
1 6
16
0 0
0 1
0 2
0 3
0 4
0 5
0 6
0 7
0 8
0 9
1 0
1 1
1 2
1 3
1 9
1 7
16
0 0
0 1
0 2
0 3
0 4
0 5
0 6
0 7
0 8
0 9
1 1
1 2
1 5
1 6
1 7
1 8
14
0 0
0 1
0 2
0 3
0 4
0 5
0 6
0 7
0 8
0...

result:

wrong answer Participant output sum mod 7 = 3 in test 36