一、题目正文:
突然天上一道雷电
gndk€rlqhmtkwwp}z
二、分析题目
gndk€rlqhmtkwwp}z这个格式像不像flag{*******}?
我们比较一下"gndk"与"flag"的ASCII码
gndk的10进制的ASCII码分别是:103 110 100 107
flag的10进制的ASCII码分别是 :102 108 97 103
发现ASCII以此减少 1 2 3 4,所以以此类推
c语言解密本子:
#include<stdio.h>
#include<string.h>
int main(){
int i;
char a[100];
printf("请输入被雷劈过的字符串:\n");
scanf("%s",a);
printf("解密得:\n");
for(i=0;i<strlen(a);i++){
a[i]=a[i]-(i+1);
printf("%c",a[i]);
}
}
flag{lei_ci_jiami}
当然python最简单,但是不知道怎么处理'€'这个字符,暂时换成别的字符,最后在换成'{'
# -*- coding:utf-8 -*-
c="gndk{rlqhmtkwwp}z"
i=0
flag=""
while i < len(c):
num=ord(c[i])-(i+1)
flag+=chr(num)
i+=1
print "解密:",flag
flag{lei_ci_jiami}