U79891.解密pro
NOI/NOI+/CTSC
通过率:0%
时间限制:3.50s ~ 10.00s
内存限制:512MB
题目描述
林总的几个数字代号被别人加密了
已知加密程序
#include<iostream>
#include<cmath>
#include<string>
#include<cstdio>
#include<cstring>
using namespace std;
unsigned long long test[100000000]={};
unsigned long long save[10000][200]={};
unsigned long long save1[100000000]={};
void dx(string a){
for(int i=0;i<a.length();i++){
test[i]=int(a[i]);
test[i+1]^=test[i];
test[i+2]|=test[i];
test[i]-=test[i]&test[i+1];
for(int j=0;j<a.length()*2;j++){
save[i][j]=test[i]&test[i+1];
test[j]+=max(max(test[i],test[j]),save1[j]);
save1[j]=save[i][j]^max(test[i],test[j]);
}
}
}
int main(){
string n;
cin>>n;
dx(n);
for(int i=0;i<n.length();i++){
unsigned long long once=char(save1[i]*10+save1[i+1]);
cout<<once;
}
}
帮她把原来的代号解密回来
输入格式
输入一个加密后的密文s
输出格式
输出加密前的数字代号
输入输出样例
输入#1
3212040184467440737095515341844674407370955159818446744073709551562
输出#1
114514
输入#2
184467440737095514881844674407370955153618446744073709551596205418446744073709551552
输出#2
123456
说明/提示
爱用AI的来看这题