zoukankan      html  css  js  c++  java
  • 2020网鼎杯青龙组 MISC 虚幻2

    我也希望misc能输出啊 ,可是实力不允许啊

    题目给了一个图片

    查看像素发现是36*12,汉信码应该是正方形,这个图片还是有点规律的,感觉应该是什么压缩之类的,但是没想到是看RGB,其实正常的话还是应该看一下rgb的。。。还是太菜了hhh
    每个像素有三个rgb,分出来,是255的话就是1,是0的话就是0。

    from PIL import Image
    
    x = 36	  #x坐标	
    y = 12	  #y坐标	
    
    im=Image.open('file.png')
    file = open('11','w')
    
    #im.show()
    z=''
    for i in range(0, x):
        for j in range(0, y):
            rgb=im.getpixel((i, j))
            print(rgb)
            if(rgb[0]==0):
                z+='1'
            elif(rgb[0]==255):
                z+='0'
            if(rgb[1]==0):
                z+='1'
            elif(rgb[1]==255):
                z+='0'
            if(rgb[2]==0):
                z+='1'
            elif(rgb[2]==255):
                z+='0'
    print(z)
    file.write(z)
    

    一个读出一个写入。。

    from PIL import Image
    
    x = 36	  #x坐标	
    y = 36	  #y坐标	
    
    im = Image.new("RGB", (x, y))	
    file = open('11','r')	
    
    a=file.read()
    z=0
    for i in range(0, x):
    	for j in range(0, y):
    		print(a[z])
    		if(a[z]=='1'):
    			im.putpixel((i, j), (255, 255, 255))
    		elif(a[z]=='0'):
    			im.putpixel((i, j), (0, 0, 0))
    		z=z+1
    
    im.show()
    im.save('1.png')
    

    再组成汉信码,在进行一下小修改,最后空白的一部分提示是爆破,可以直接画两下,分辨的时候会自动修复

    跟二维码一样也有差错校验。。。也是应该的吧

  • 相关阅读:
    141. Linked List Cycle【easy】
    237. Delete Node in a Linked List【easy】
    234. Palindrome Linked List【easy】
    排序_归并排序
    排序_选择排序
    排序_快速排序
    排序_冒泡排序
    排序_希尔排序
    排序_插入排序
    121. Best Time to Buy and Sell Stock【easy】
  • 原文地址:https://www.cnblogs.com/p201821440039/p/12900273.html
Copyright © 2011-2022 走看看