結果

問題 No.8051 cracked
ユーザー ciel
提出日時 2019-04-08 00:07:02
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 368 ms / 1,024 ms
コード長 1,894 bytes
コンパイル時間 559 ms
コンパイル使用メモリ 58,752 KB
最終ジャッジ日時 2025-01-07 01:34:58
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 24
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

#include <string>
#include <cstdio>
using namespace std;
string dna_orig="BWZ49Y;|O1AUtz)a%pa7J_;jgZewh9WMv>cV{>$5X>UFXb#rNMXCQ82ZDn(CVPj<=b97`o3UhRFX>MmAWNu+!Z*pm8Jt8V1I|_4ja%pa7AXGgfFflSSG&MFiI5|N
    =LqtVJM@UIZOH55pPf$@(Q&d$}S6EqEVPa!sWoBn+X=-b1ZEkOHadLBXb#`}nd3qruBqb&&DJm;1J3Ku;KR{kzV0(Ohej+;xb98cPZf783VRL0THD6?9V{c
    ?-C}VGKb95kcbaH8KXCNkXDSHYDX>N2NZapwN3JGa$bRcOxFgpqfb98cPZf78JI|>P5b#!kaW<6UbT_|a8bRcOdduDHPC~0nVAZk4@J8C>>J8CN{DSL7&Jt!z{K0Y`qC^Ic;DJdp0H8m
    +aeSJF$31)9{C_8C9b1rjfdSxgnJ83H`DSHYD32AP0Ab34gE@o+NWGHi6X<aEh3JD2rJ#H#EH7j^K3JD2mW+-VTH9b8vDP|}%DJ*V1FgpqfeF_O_B|SAe3JGR!awutTbRcRyX*+5>H9Kl6D=B
    +!J#H#EH7htYJADcXW+-VbF)2F=336q0b#iVXaytrr3TbY1AZ=l3ZYU{x3JG&`a%pa7AY^V~AUz;rVRL0THD6?9V{c?-C}eJ7UvF}0XDK@h32AP0AaHMUAUz;tZecEFX>MdFC}U`0aw#-2DLV
    =YWNu*~Js@OmVJ>rZVsmtIC@?H=Z*wUtWNu+!Z*pm8D`akAE^~Eab98bjaBp)fF)2F=3JEVSAY^rAAarjad39@PV{c?-av*GJZE192bZKvHEFf}aVPt7;XCQZIZ
    ){~Cb98cPZf78Ab0BVSbRc1HaBOK~VPb4$E(!^AbaH8KXCQcTVR<_W31)9{C~0nVAY&|PJuo|IJY;TRE^}#mWhf~-X)7x!dkP5&V?AeObYo~?awsV~3JD2#a$$KZJ!3lx34IC)W^ZyRX>N2NX
    +1DIX*^_ZVJ>rNdSxgnJ83H`DQRXXWNu+wX<Z>bcyeKRTWMV>aB^vGbY>_bC1hM~Tp}f7Tq0a<Tp}f7Tq0a<A}nbvWNu+wX<aOMa$$K}X<aEh3Vi";
string T="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!#$%&()*+-;<=>?@^_`{|}~";
string base85_decode(const string &s){
int n=0;
int i=0;
string r;
auto f=[&](int i){for(int j=0;j<i;j++){r+=((n>>8*(3-j))&255);}};
for(;i<s.size();i++){
int x=T.find(s[i]);
n=n*85+x;
if(i%5==4)f(4),n=0;
}
i%=5;
for(int j=i;j<5;j++){n=n*85+84;}
f(i-1);
return r;
}
int main(){
string dna = base85_decode(dna_orig);
int pos = dna.find((char)42);
dna = dna.substr(0,pos)+dna_orig+dna.substr(pos+1);
// due to yukicoder limitation, reading whole string is not applicable.
string xray;
for(int c,i=0;i<dna.size();i++){
c=getchar();
xray+=c;
}
for(int i=0;i<dna.size();i++)if(dna[i]!=xray[i])printf("%d\n\"%c\"\n\"%c\"\n",i,dna[i],xray[i]);
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0