QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#771056#3596. New Mathsstrlen_s_AC ✓1ms3720kbC++17815b2024-11-22 09:14:002024-11-22 09:14:01

Judging History

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

  • [2024-11-22 09:14:01]
  • 评测
  • 测评结果:AC
  • 用时:1ms
  • 内存:3720kb
  • [2024-11-22 09:14:00]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
const int N=35;
char c[N];
int a[N],ans[N];
int val[N];
int n,m;
bool check(int p,int q){
  for(int i=1;i<=2*p-1;i++)val[i]=0;
  for(int i=1;i<=p;i++)
    for(int j=1;j<=p;j++)
      val[i+j-1]=(val[i+j-1]+ans[i]*ans[j])%10;
  for(int i=1;i<=q;i++)if(val[i]!=a[i])return 0;
  return 1;
}
void dfs(int x){
  if(x>m){
    if(check(m,n)){
      for(int i=1;i<=m;i++)cout<<ans[i];
      exit(0);
    }
    return;
  }
  for(int i=0;i<=9;i++){
    ans[x]=i;
    if(check(x,x))dfs(x+1);
  }
}
signed main(){
  ios::sync_with_stdio(0);
  cin.tie(0),cout.tie(0);
  cin>>(c+1);n=strlen(c+1);
  if(n%2==0){
    cout<<-1<<'\n';
    return 0;
  }
  for(int i=1;i<=n;i++)a[i]=c[i]-'0';
  m=(n+1)/2;
  dfs(1);
  cout<<-1<<'\n';
  return 0;
}

詳細信息

Test #1:

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

input:

6

output:

4

result:

ok single line: '4'

Test #2:

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

input:

149

output:

17

result:

ok single line: '17'

Test #3:

score: 0
Accepted
time: 0ms
memory: 3672kb

input:

123476544

output:

11112

result:

ok single line: '11112'

Test #4:

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

input:

15

output:

-1

result:

ok single line: '-1'

Test #5:

score: 0
Accepted
time: 0ms
memory: 3592kb

input:

255768423183

output:

-1

result:

ok single line: '-1'

Test #6:

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

input:

45665732555

output:

-1

result:

ok single line: '-1'

Test #7:

score: 0
Accepted
time: 0ms
memory: 3644kb

input:

129862724660409

output:

11450607

result:

ok single line: '11450607'

Test #8:

score: 0
Accepted
time: 0ms
memory: 3672kb

input:

423019449793954427977

output:

-1

result:

ok single line: '-1'

Test #9:

score: 0
Accepted
time: 0ms
memory: 3644kb

input:

27121

output:

-1

result:

ok single line: '-1'

Test #10:

score: 0
Accepted
time: 0ms
memory: 3708kb

input:

1062062012267214086

output:

1086309746

result:

ok single line: '1086309746'

Test #11:

score: 0
Accepted
time: 0ms
memory: 3588kb

input:

7121439534552006831

output:

-1

result:

ok single line: '-1'

Test #12:

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

input:

2331

output:

-1

result:

ok single line: '-1'

Test #13:

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

input:

664

output:

42

result:

ok single line: '42'

Test #14:

score: 0
Accepted
time: 0ms
memory: 3652kb

input:

48960202843634584

output:

270467972

result:

ok single line: '270467972'

Test #15:

score: 0
Accepted
time: 0ms
memory: 3588kb

input:

950191368742123

output:

-1

result:

ok single line: '-1'

Test #16:

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

input:

6838729832825874768072709

output:

4195767732753

result:

ok single line: '4195767732753'

Test #17:

score: 0
Accepted
time: 0ms
memory: 3664kb

input:

126412441

output:

16521

result:

ok single line: '16521'

Test #18:

score: 0
Accepted
time: 0ms
memory: 3648kb

input:

4466447004844686806

output:

2609442604

result:

ok single line: '2609442604'

Test #19:

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

input:

4

output:

2

result:

ok single line: '2'

Test #20:

score: 0
Accepted
time: 0ms
memory: 3708kb

input:

90074858599988014

output:

-1

result:

ok single line: '-1'

Test #21:

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

input:

9498578088490196330623

output:

-1

result:

ok single line: '-1'

Test #22:

score: 0
Accepted
time: 0ms
memory: 3584kb

input:

82

output:

-1

result:

ok single line: '-1'

Test #23:

score: 0
Accepted
time: 0ms
memory: 3648kb

input:

8925123681749359895

output:

-1

result:

ok single line: '-1'

Test #24:

score: 0
Accepted
time: 0ms
memory: 3608kb

input:

9008004

output:

3008

result:

ok single line: '3008'