0%

[蓝帽杯 2023 半决赛]排队队吃果果 ihk01的WriteUp

2023-09-24 09:37By
ihk01
MISC

将xlsx的每一列按照数字升序,然后将黑体转为1,瘦体转为0,可以发现有类似二维码的特征
NSSIMAGE

from openpyxl import load_workbook from PIL import Image workbook = load_workbook('./data.xlsx') sheet_names = workbook.sheetnames for sheet_name in sheet_names: worksheet = workbook[sheet_name] rows = worksheet.iter_rows() data = [] all_data = [] for row in rows: for cell in row: value = cell.value font = cell.font font_bold = font.b data.append([int(value), font_bold]) all_data.append([int(value), font_bold]) twod_data = [] chunk_size = 39 for i in range(chunk_size): twod_data.append(data[i * chunk_size:(i + 1) * chunk_size]) print(twod_data) all_list = [] for y in range(chunk_size): list_data = [] for x in range(chunk_size): list_data.append(twod_data[x][y]) list_data = sorted(list_data, key=lambda x: x[0]) all_list.append(list_data) print(all_list) out ="" for y in range(chunk_size): for x in range(chunk_size): if all_list[y][x][1] == False: out += "0" else: out += "1" print(out) # 000000000000000000000000000000000000000011111110011101100010101110101011111110010000010011011011001111101000010000010010111010110110000011110011111010111010010111010100110110001010101111010111010010111010011100010111100010001010111010010000010000110010111111011000010000010011111110101010101010101010101011111110000000000010010110000001111101000000000000011011000000100011011010110000011000000010001101010101110010110011100111100010110110010001011110000101110011000110001001001000010100010011100011000011100001101010110011111011100110111010010110001000001110001101010100100010101110000001001110110100111000110111111000010110010100100010000110010110100000111111100011000110010100001111010011111011011110011011101001101011011011010111100011100011111110011011110001110100111110101010011101001110011011001001001010110010000011010110000101000110001000010011110000011100100100110111010011011011101100000011110110010101111110111110011011110010010101000001000111001010100111000001110011001010010110110010111001111110010100011011001100001110101010011111101100000011100110000011110111001000111000100110010011000100001000110110010110100101100010000011110000100011101101011111101110000000000101000010101110011011000110000011111110110111001000011111101010111110010000010001000001000110101001000110000010111010111100111010101010011111110110010111010100101111001011001000010011000010111010011001100011101010110001110110010000010010100111011101000110011001110011111110000001010001000010011110010010000000000000000000000000000000000000000

转为二维码后扫码得到flag
NSSIMAGE

还没有人赞赏,快来当第一个赞赏的人吧!
  
© 著作权归作者所有
加载失败
广告
×
评论区
添加新评论