首先补个没用的小知识:
python 字典(dict)的特点就是无序的,按照键(key)来提取相应值(value),如果我们需要字典按值排序的话,那可以用下面的方法来进行:
1 下面的是按照value的值从大到小的顺序来排序。
> dic = {'a':31, 'bc':5, 'c':3, 'asd':4, 'aa':74, 'd':0}
> dict= sorted(dic.iteritems(), key=lambda d:d[1], reverse=True)
> print dict
输出的结果: [(‘aa’, 74), (‘a’, 31), (‘bc’, 5), (‘asd’, 4), (‘c’, 3), (‘d’,
0)]下面我们分解下代码 print dic.iteritems() 得到[(键,值)]的列表。
然后用sorted方法,通过key这个参数,指定排序是按照value,也就是第一个元素d[1的值来排序。reverse =
True表示是需要翻转的,默认是从小到大,翻转的话,那就是从大到小。2 对字典按键(key)排序: dic = {‘a’:31, ‘bc’:5, ‘c’:3, ‘asd’:4, ‘aa’:74, ‘d’:0}
dict= sorted(dic.iteritems(), key=lambda d:d[0]) d[0]表示字典的键 print dict
开始正文
这题贼骚,看一下,分析题意:
看出来了
1. a[i]对应有47 - i个
2. 所以直接猜a[0]是不是有一个式子直接是答案
3. 果然他妈的是
4. 重点这题求flag,不用说就是0~255的转字符
题意都解出来了,用个eval带入就行了
代码如下:
U2FsdGVkX19KtIGRMjhv79O2ksMma1ncjBHLltmYL4imgdCwkGFLnvvXeKg%2FDJiqT37C8XxTl6SmNsi722e1G2Ie614lEWEk5v9HyMN0%2BIPSGMDsSpXC%2BAsWJXJeZ%2Boq1xcMN3gXBfF3JcIgivaCRuBg96%2B7NtnglfouIvyPqw8MAj6lDJnanh80cFEJu%2BRaeGMFHnJkEy3JY1tIg%2BZ%2Fe0I474cA%2FT1tenhgntfhd8NUNTIV5e%2FXCmFQ4%2FI%2BBbL8BIQPPbpOxSDA%2BXU%2BhUXm0%2FdaPKWG6Pla6mVxgGUexJC78kuUlK%2BT2hd5xdslb0oEM%2FxIsgVi9YQ%3D
上边的网址简单加了几次小密
建议还是自己搞,有了思路还是比较简单的