結果
| 問題 |
No.8051 cracked
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2019-04-07 22:04:24 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 1,805 bytes |
| コンパイル時間 | 797 ms |
| コンパイル使用メモリ | 69,872 KB |
| 最終ジャッジ日時 | 2025-01-07 01:32:13 |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | TLE * 24 |
ソースコード
#include <iostream>
#include <string>
#include <iterator>
using namespace std;
string table="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
string base64_decode(const string &in){
string ret="";
int b=0,I=0,idx;
int x=0;
for(;I<in.size();I++){
if(in[I]=='=')break;
idx=table.find(in[I]);
if(idx>=0){
x=(x<<6)+idx;
b+=6;
if(b>=8){b-=8;ret+=(char)((x>>b)&0xff);}
}
}
while(b>=8){b-=8;ret+=(char)((x>>b)&0xff);}
return ret;
}
int main(){
string dna_orig="I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8aXRlcmF0b3I+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnN0cmluZyB0YWJsZT0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7CnN0cmluZyBiYXNlNjRfZGVjb2RlKGNvbnN0IHN0cmluZyAmaW4pewoJc3RyaW5nIHJldD0iIjsKCWludCBiPTAsST0wLGlkeDsKCWludCB4PTA7Cglmb3IoO0k8aW4uc2l6ZSgpO0krKyl7CgkJaWYoaW5bSV09PSc9JylicmVhazsKCQlpZHg9dGFibGUuZmluZChpbltJXSk7CgkJaWYoaWR4Pj0wKXsKCQkJeD0oeDw8NikraWR4OwoJCQliKz02OwoJCQlpZihiPj04KXtiLT04O3JldCs9KGNoYXIpKCh4Pj5iKSYweGZmKTt9CgkJfQoJfQoJd2hpbGUoYj49OCl7Yi09ODtyZXQrPShjaGFyKSgoeD4+YikmMHhmZik7fQoJcmV0dXJuIHJldDsKfQppbnQgbWFpbigpewoJc3RyaW5nIGRuYV9vcmlnPSIqIjsKCXN0cmluZyBkbmEgPSBiYXNlNjRfZGVjb2RlKGRuYV9vcmlnKTsKCWludCBwb3MgPSBkbmEuZmluZCgoY2hhcik0Mik7CglkbmEgPSBkbmEuc3Vic3RyKDAscG9zKStkbmFfb3JpZytkbmEuc3Vic3RyKHBvcysxKTsKCglzdHJpbmcgeHJheTsKCWZvcihpbnQgYzt+KGM9Z2V0Y2hhcigpKTspeHJheSs9YzsKCWZvcihpbnQgaT0wO2k8ZG5hLnNpemUoKTtpKyspaWYoZG5hW2ldIT14cmF5W2ldKXByaW50ZigiJWRcblwiJWNcIlxuXCIlY1wiXG4iLGksZG5hW2ldLHhyYXlbaV0pOwp9";
string dna = base64_decode(dna_orig);
int pos = dna.find((char)42);
dna = dna.substr(0,pos)+dna_orig+dna.substr(pos+1);
string xray;
for(int c;~(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]);
}