首页 > 编程语言 >第十四届蓝桥杯大赛软件赛省赛Python 《01串的熵》

第十四届蓝桥杯大赛软件赛省赛Python 《01串的熵》

时间:2024-03-23 11:35:53浏览次数:32  
标签:01 log2 赛省赛 蓝桥 次数 信息熵 math

问题描述

问题类型

暴力,枚举、

问题分析

由例题知对于一个长度为L的01串,设0出现的次数为x,则1出现的次数为L-x,其信息熵整理后可表示为:

基于此,我们可以给出当长度L = 23333333的01串,其信息熵为11625907.5798时,该字符串中0和1的个数分别为多少。
题目限制0出现的次数比1少,可以通过得出的结果进行判断,且由于信息熵公式具有对称性,我们只需求出得出结果中0次数少的那一个(少于L/2)即可。

代码实现

import math

L = 23333333
Hs = 11625907.5798
for x in range(1, (L + 1) // 2)):
    if round(x * x / L * math.log2(x / L) +#由于题干给出的信息熵其实是保留了小数点后的四位,如果不使用round函数将始终无法匹配到结果
             (L - x) * (L - x) / L * math.log2((L - x) / L), 4) == -Hs:
        print(x)

标签:01,log2,赛省赛,蓝桥,次数,信息熵,math
From: https://www.cnblogs.com/nhwite/p/18090900

相关文章

  • 蓝桥杯嵌入式(STM32G431RBT6)——扩展板——IC采集频率(PUSL1、PUSL2)
    1.原理图2.Cubemx配置3.代码(1)timer.c#include"timer.h"unsignedintPUSL1_frq_T2CH2=0;unsignedintPUSL2_frq_T2CH3=0;uint32_tuwIC2Value1_T2CH2=0;//第一次捕获上升沿的时间uint32_tuwIC2Value2_T2CH2=0;//第二次捕获上升沿的时间uint32_tu......
  • 蓝桥杯:数的分解
    题目把2019分解成3个各不相同的正整数之和,并且要求每个正整数都不包含数字2和4,一共有多少种不同的分解方法?注意交换3个整数的顺序被视为同一种方法,例如1000+1001+18和1001+1000+18被视为同一种。思路循环遍历看每个数的每位代码#include<iostream>usi......
  • 「01」选购攻略:主播套装,让你拥有这六个设备就够用了
    「01」选购攻略:主播套装让你拥有这六个设备就够用了在使用电脑进行直播之前,了解自己的直播硬件是非常重要的。以下是一些常见的直播硬件:1、手机套装首选内存充足,摄像头像素高,性能稳定的手机。建议用iPhone11系列,华为mate30系列,高配置的手机画质清晰,传输中视频不会被压缩,且长......
  • 【蓝桥杯嵌入式】四、各种外设驱动(十一)ADC(1):软件触发与中断触发方式
    温馨提示:本文不会重复之前提到的内容,如需查看,请参考附录【蓝桥杯嵌入式】附录目录重点提炼:一、需求分析1、需要的外设资源分析: 2、外设具体分析:比赛时ADC可能需要配置的部分:二、软件配置按照分析配置外设:ADC2_IN15:采用软件触发的方式 ADC1_IN11:采用TIM6触发的方......
  • python-day01
    python基础语法注释单行注释:#注释内容多行注释:"""多行注释"""type()语句判断类型例如:print(type(123))print(type(23.4))print(type("Hello"))输出为:数据类型转换int(x)<===>将x转换为一个整数float(x)<===>将x转换为一个浮点数str(x)......
  • 中考英语首字母快速突破014-2021上海徐汇英语二模-The Glamorous Life of TV Journali
    中考英语首字母快速突破014-2021上海徐汇英语二模-TheGlamorousLifeofTVJournalists-电视记者的风光生活PDF格式公众号回复关键字:ZKSZM014原文​HundredsofthousandsofpeopleoftenseetheirfacesontheTVscreen.Theymaybespeaking“live”from......
  • 扫雷(蓝桥杯,acwing)
    题目描述:扫雷是一种计算机游戏,在 2020 世纪 80 年代开始流行,并且仍然包含在某些版本的MicrosoftWindows操作系统中。在这个问题中,你正在一个矩形网格上玩扫雷游戏。最初网格内的所有单元格都呈未打开状态。其中 M个不同的单元格中隐藏着 M 个地雷。其他单元格内......
  • 全球变暖(蓝桥杯,acwing每日一题)
    题目描述:你有一张某海域 N×N像素的照片,”.”表示海洋、”#”表示陆地,如下所示:........##.....##........##...####....###........其中”上下左右”四个方向上连在一起的一片陆地组成一座岛屿,例如上图就有 22 座岛屿。由于全球变暖导致了海面上升,科学家预测未......
  • 软件工程日报012
     第12天第二天第三天第四天第五天所花时间(包括上课) 3h    代码量(行) 300    博客园(篇) 1    所学知识 android的xml    ......
  • Java-day01
    类型隐式转换byte、short、char类型数据在运算时(+、-、*、/、%...)会进行隐式转换成int。例如:bytea=3;byteb=4;bytec=a+b;错误,a+b在运算时会转换为int型,将int型赋值为byte型,大转小,需要强制转换,(byte)(a+b)shorts=1;s=s+1;错误,s+1在运算是会转换为int型,......