[C++] 纯文本查看 复制代码 #include<bits/stdc++.h>
using namespace std;
int asfdvgare[10000];
const int DF98D=1e9+7;
char S98HBFG[10000];
char DFHSV5Y[10000];
char RTGDFTHR[100000];
char R0fjd[1000][1000]={"8311","7999","9691","1511","5701","1710","8323","3328","9111","1173","9118","1013","2991","1497","9910","7101","1003","2116","1041","0132","1129","7115","1151","1911","1114","100"};
char I89fhga[100000];
int Hsdfgsd23=282829919;
int Yksgbas235(int sed) {
int res=0;
int len=strlen(I89fhga);;
for(int i=0;i<len;++i){
res=(long long)(res*sed+I89fhga[i])%DF98D;
}
return res;
}
int rdfhfd5546(){
int cs1=0;
int lenpsw=strlen(S98HBFG);
if(lenpsw!=41){
return -5;
}
for(int i=0;i<97;i++){
char pd=S98HBFG[i];
if(pd=='^'||pd=='j'||pd=='l'||pd=='f'||pd=='n'||pd=='x'||pd=='#'||pd=='!'||pd=='%'||pd=='c'||pd=='4'||pd=='9'||pd=='g'||pd=='o'||pd=='s'){
S98HBFG[i]=0;
I89fhga[cs1++]='2';
}
if(pd=='2'||pd=='7'||pd=='a'||pd=='b'||pd=='p'||pd=='w'||pd=='q'||pd=='u'||pd=='z'||pd=='v'||pd=='h'||pd==')'||pd=='@'||pd=='$'||pd=='/'){
S98HBFG[i]=0;
I89fhga[cs1++]='3';
}
}
for(int i=0;i<97;i++){
if(S98HBFG[i]=='0'){
cout<<0;
return -5;
}
}/*
if(Yksgbas235(114514)!=-514049345){
cout<<Yksgbas235(114514)<<endl;;
return -5;
}*///hash写挂了,自行编译吧,不好意思
return 0;
}
int main(int argc,char* argv[]){
srand(time(0));
cout<<"password:";
cin>>S98HBFG;
if(rdfhfd5546()==-5){
cout<<"err\n";
getchar();
getchar();
return 0;
}
int pin=0;
for(int i=0;i<26;i++){
int llen=strlen(R0fjd[i]);
for(int j=0;j<llen;j++){
RTGDFTHR[pin++]=R0fjd[i][j];
}
}
int U89ywht=strlen(I89fhga);
int len=strlen(RTGDFTHR);
int OOihdd34=0;
int cnt1=0;
for(int i=0;i<U89ywht;i++){
if(I89fhga[i]=='2'){
for(int j=OOihdd34;j<OOihdd34+2;j++){
if(j==OOihdd34){
asfdvgare[cnt1]+=(RTGDFTHR[j]-'0')*10;
}
if(j==OOihdd34+1){
asfdvgare[cnt1]+=RTGDFTHR[j]-'0';
}
}
cnt1++;
OOihdd34+=2;
}
if(I89fhga[i]=='3'){
for(int j=OOihdd34;j<OOihdd34+3;j++){
if(j==OOihdd34){
asfdvgare[cnt1]=(RTGDFTHR[j]-'0')*100;
}
if(j==OOihdd34+1){
asfdvgare[cnt1]+=(RTGDFTHR[j]-'0')*10;
}
if(j==OOihdd34+2){
asfdvgare[cnt1]+=RTGDFTHR[j]-'0';
}
}
cnt1++;
OOihdd34+=3;
}
}
for(int i=0;i<len;i++){
DFHSV5Y[i]=char(asfdvgare[i]);
}
for(int i=0;i<40;i++){
cout<<DFHSV5Y[i];
}
cout<<endl;
return 0;
} |