首长的无节操掉Rp题 不收快递


首长的无节操掉Rp题  不收快递

文章插图
本题选自某_首长的原创题,-_
先说一下做法:
【首长的无节操掉Rp题不收快递】首先我们甚至不知道做法,也不知道密钥 。
我们甚至不知道提交方法……(汗
本题采用GBK_,特殊的编码模式)(真的要考硬编码?
Data 1:
我们直接解码,发现它根本没加密 。
获得成就:打开第一个点!很好,你打开了第一个点,现在,我将告诉你这题应该怎么做,怎么得分 。首先,按照题目所述,你需要解密我所给你的input 。每个点的分值我会写在文件的某个部分 。比如说,现在这个点的分值是10分 。恭喜你获得了十分!你的最终的分是你所破解分值的max 。当然,最后一个点是100分喽~最后提交的时候,你只要提交这样一个程序#include int main(){freopen("pass.out","w",stdout);printf("score\n");fclose(stdout);return 0;}其中,score是你的分数,你自己填上 。我相信你很有节操,不会乱报分数 。Have fun!第二个点的破解密码是:7FFFF
……
看后面的点……
#include#include#include#include#include#include#include#include#includeusing namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define Rep(i,n) for(int i=0;i=0;i--)#define Forp(x) for(int p=pre[x];p;p=next[p])#define MAXN (10000+10)char k[10000]="3746464646";char s[10000],t[10000];int s1[MAXN],t1[MAXN],k1[MAXN];void trans(char s[],int a[]){Rep(i,strlen(s)){if (isdigit(s[i])) a[i]=s[i]-'0';else a[i]=s[i]-'A'+10;}}void print(int s1[],int n){Rep(i,n) if (!(i%2)) cout<<(char)(s1[i]*16+s1[i+1]);}int main(){freopen("pass2.in","r",stdin);freopen("pass2.key","w",stdout);scanf("%s",s);freopen("CON","r",stdin);scanf("%s",k);int n=strlen(s);trans(s,s1);trans(k,k1);int lenk=strlen(k);Rep(i,n) t1[i]=s1[i]^k1[i%lenk];print(t1,n);return 0;}
于是乎我直接在输入端中输入密码,过 。
Data 3:
密钥为一个1位字符 。
继续找
#include#include#include#include#include#include#include#include#includeusing namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define Rep(i,n) for(int i=0;i=0;i--)#define Forp(x) for(int p=pre[x];p;p=next[p])#define MAXN (10000+10)char k[10000];char s[10000],t[10000];int s1[MAXN],t1[MAXN],k1[MAXN];void trans(char s[],int a[]){Rep(i,strlen(s)){if (isdigit(s[i])) a[i]=s[i]-'0';else a[i]=s[i]-'A'+10;}}void print(int s1[],int n){Rep(i,n) if (!(i%2)) cout<<(char)(s1[i]*16+s1[i+1]);}int main(){freopen("pass3.in","r",stdin);freopen("pass3.key","w",stdout);scanf("%s",s);int n=strlen(s);trans(s,s1);Rep(j,16){k1[0]=j;int lenk=1;Rep(i,n) t1[i]=s1[i]^k1[i%lenk];print(t1,n);cout<
悄滤ャ汹安*安┮铝ふШ哝Л铝汹安趴ふソ仟*胀捏谣が安ひ拶歧╃呃湃冥安裨步闷ふ呃安歧汹o耷潘步┮俅拿拿铝要铝撩奈汹安莺厘美ど赚尬揆至汹步ずか剞锚╃仝隆Л要铝安靴步撩奈仟铝婆锚╃汹安|pbetcN|xd呦者步仟荑莆汹安》步锚╃茳剞没捏黎俅汹安*步牤s叟を铝#!η丈步茫隍壑铝勰“安抻锚╃s叟を%步彝女壑搏$' 'W"UT(终于打开了 。不错 。该有的东西都有了 。救援的船只不可能这么快到 。得先做个窝再说 。嗯,简易的窝 。做好了~现在,该去找找有没有幸存者了 。太阳已经和地平线相切了,但海岛上一个人影都没有 。看来,幸存者只有自己一个了 。master_miu无奈,只好往回走了 。唉,一个晚上就要这样过去了 。不过,本测试点有20分呢,也算是有收获啊 。下一个测试点4号,密钥是:5616F3DE9彐嚅嚵寵蝤拹>9亪囖拹嬸嚆嗺厴厪嚆蝤拹>9>9嶜鐫嗺嚐鍒亪岤黠嫜饑屵啂拹嗮渑嬇珀鴨拹>9>9遇悷徚徜嗺拹>9>9渑夝蝤M玳悷嬸麞驷驷嚆饒嚆汜囌骒蝤拹>9>9>9>9>9樷轻鈲瀴膈廃禳郁泸鴲焼槈悊夲垕披儏忦堗銙?9寚髧悷汜囌骒鍒嚆溏弶釄嬇蝤拹>9^R@GVAl^ZF鼾悷鍒夝堧潇蝤拹>9>9儠悷釄嬇嶠釞嫜馐娢麞蝤拹亪娢悷倣佈喰嚆勫麟悷醽嚆埪儝拹>9>9>9>9釄嬇佈喰夦悷痫鐚悏u