- 自学 python 中的异步编程 asyncio (五):asyncio 与 线程thread
Eaton5959
python
自学python中的异步编程asyncio(一):学习基本概念自学python中的异步编程asyncio(二):asyncio模块与核心组件自学python中的异步编程asyncio(三):asyncio实现基本异步编程自学python中的异步编程asyncio(四):基本的异步IO编程自学python中的异步编程asyncio(五):asyncio与线程thread自学python中的异步编程a
- iPhone手机桌面必备:好用的便签/效率/美化/学习/生活工具
lee54621
智能手机学习生活
是不是总觉得自己的iPhone手机桌面不够酷炫、不够实用?看着千篇一律的布局,是不是觉得缺了点什么?别担心,今天就给大家分享一波iPhone手机桌面必备的好用App,让你的手机瞬间提升格调,实用性拉满,无论是学习、工作还是娱乐,都能得心应手,轻松拿捏,赶紧跟着我一起探索这些宝藏应用吧!》》效率提升类敬业签:可以和鸿蒙安卓电脑共享数据的云便签,集合便签、清单、提醒事项、日历、云盘、翻译、语音转文字、
- NextJs - 服务端组件如何拿到当前页面的URL或者参数
Zong_0915
javascript前端开发语言NextJs
NextJs-服务端组件如何拿到当前页面的URL或者参数前言一.NextJs如何拿到当前页面URL二.NextJs拿URL参数的两种方式前言NextJs中,如果你是服务端组件,并且是App路由模式,如果想拿到当前URL,我们只能通过中间件获取,并通过header来实现交互。想再学习下中间件的可以参考我的这篇文章:NextJs初级篇-安装|路由|中间件一.NextJs如何拿到当前页面URL我们编写根
- 【Python】super() 函数和 MRO 顺序的实例剖析
彭彭不吃虫子
python开发语言
1.构造函数(__init__(self[,...]))在类中定义__init__()方法,可以实现在实例化对象的时候进行个性化定制:>>>classC:... def__init__(self,x,y):... self.x=x... self.y=y... defadd(self):... returnself.x+self.y... defmu
- 深入理解C语言函数:定义、调用与设计
Threeiy
c语言
在C语言编程的世界里,函数是构建复杂程序的基石。它允许我们将一个大的任务分解为多个小的、功能独立的模块,使得代码更易于理解、维护和复用。今天,我们就来深入探讨一下C语言函数的方方面面。一、函数定义的一般形式函数定义由函数头和函数体两部分组成。//返回值类型类型标识符函数名(形式参数)//函数头head{//函数体--body声明部分语句部分}-函数头:-类型标识符:用于指定函数处理完后要带出的结果
- c语言函数部分
磨十三
c语言开发语言
一、函数定义(一)一般形式//返回值类型类型标识符函数名(形式参数)//函数头head{//函数体--body声明部分语句部分}(二)函数头类型标识符---写数据类型的---表示的函数处理完之后,要带出的结果的类型---(三)函数名体现函数功能---命名规则符合标识符命名规则形式参数---用来接受传递给函数中的数据的(四)函数体就是完成函数对应功能的代码(五)函数调用:语法:函数名(实际参数)二、
- tplink rt406路由器如何配置端口映射
hunter206206
网络智能路由器网络
配置TP-LinkRT406路由器的端口映射(端口转发)步骤如下:1.登录路由器管理界面打开浏览器,输入默认IP地址192.168.1.1,按回车。输入用户名和密码(默认均为admin),点击“登录”。2.进入端口转发设置登录后,点击左侧菜单的“转发规则”。选择“虚拟服务器”。3.添加端口映射规则在“虚拟服务器”页面,点击“添加新条目”。填写以下信息:服务端口号:外部访问的端口号(如8080)。I
- 你说通过Kafka AdminClient获取Lag会有性能问题?尊嘟假嘟0.o
javakafka大数据
版本日期备注1.02024.8.25文章首发本文内容已用一种抽象的方式做成了视频,喜欢看视频的同学可以在B站上搜索“抽象狗哥”观看相应的内容。0.前言前阵子团队里出了个大故障,本质是因为其他语言实现的client有问题,非常频繁的请求大量元数据,而Kafka服务端这边也没有做什么限制,导致KafkaBroker宕了。在相关的复盘报告中,复盘方提到了我这边的监控程序(用于观察线上实时作业的堆压)会频
- nginx 正向代理配置
wx912820
nginxnginxlinux网络
nginx正向代理的配置http和httpsserver{resolver114.114.114.114;#指定DNS服务器IP地址listen80;location/{proxy_passhttp://$host$request_uri;#设定代理服务器的协议和地址(这里不用修改)proxy_set_headerHOST$host;proxy_set_headerX-Real-IP$remote
- 二进制/源码编译安装mysql 8.0
雷学习
Linuxmysql数据库
二进制方式:1.下载或上传安装包至设备:2.创建组与用户:[root@openEuler-1~]#groupaddmysql[root@openEuler-1~]#useradd-r-gmysql-s/bin/falsemysql3.解压安装包:tarxfmysql-8.0.36-linux-glibc2.12-x86_64.tar.xz-C/usr/local4.建立软链接:ln-sv/usr/
- linux 安装mysql5.6
李逍遙️
linuxadbandroid
下载mysql安装包https://dev.mysql.com/downloads/mysql/5.6.html卸载系统自带的mariadb[root@gpap-prod-3~]#rpm-qa|grepmariadbmariadb-libs-5.5.68-1.el7.x86_64[root@gpap-prod-3~]#rpm-e--nodepsmariadb-libs-5.5.68-1.el7.x
- vue axios 下载 获取文件名 filename 后端返回
失眠的咕噜
vue.jsjavascript前端
constdownloadRow=(row)=>{importConfigApi.downloadTemplate(row.id,'blob').then((res)=>{console.log(res)//letfileName=''letfileName=decodeURI(res.headers['content-disposition'].split(';')[2].split('file
- 【ORB-SLAM2:九、BA优化】
KeyPan
ORB-SLAM2人工智能计算机视觉机器学习深度学习算法
BA(BundleAdjustment)是SLAM系统中优化位姿和地图点位置的重要技术。通过最小化图结构中的重投影误差,BA在提高地图精度和轨迹优化方面发挥了核心作用。本章将围绕BA优化展开,从图优化工具简介到优化函数分类,再到具体的局部BA和Sim3优化边的解析进行详细阐述。9.1图优化和g2o简介9.1.1图优化的基本概念图优化图优化将SLAM问题建模为一个图结构:节点(Vertices):代
- python-mysql-连接池
Xiaohuansong
python笔记pythonmysql连接池
利用内部队列编写的简易的支持上下文的连接池,目前只支持多线程内的链接代码如下实现了最大最小连接池的限制,链接回收,dml封装,动态维护链接等操作importMySQLdbimportloggingimportQueuefromthreadingimportThreadfromcontextlibimportcontextmanagerimporttimeclassMysqlTool(object)
- BUUCTF--October 2019 Twice SQL Injection
Uzero.
根据题目可以知道这是一个二次注入题注册时把我们sql语句放到username处,登录后即可看到我们想要的信息payload为:username=1'unionselectdatabase()#username=1'unionselectgroup_concat(table_name)frominformation_schema.tableswheretable_schema='ctftrainin
- Nginx正向代理配置详解
水月清辉
Nginxnginx代理模式
一、nginx正向代理介绍及配置(需要在客户端配置代理服务器进行指定网站访问)#模块ngx_http_proxy_module:http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_set_header1、环境介绍代理服务器系统环境为:centosnginx代理服务器为:192.168.10.10测试客户端为局域网内任意win
- 路由规则的匹配优先级
我没想到原来他们都是一堆坏人
服务器微服务
路由规则的匹配优先级路由规则是从上到下匹配的,一旦匹配成功,就不会再考虑下面的规则。现有以下两条路由规则:-id:admin_routeuri:lb://renren-fastpredicates:-Path=/api/**filters:-RewritePath=/api/(?/?.*),/renren-fast/$\{segment}-id:product_routeuri:lb://guli
- LINUX常用命令 一
夜颂春秋
linux服务器运维
1.cd2.pwd3.ls4.passwd5.who6.cat7.mkdir8.rmdir9.chmod10.chown11.chgrp12.touch13.cp14.mv15.rm16.find17.grep18.more19.less20.head21.tail22.cut23.crontab24.sleep25.kill26.ps28.top29.man,info30.alias31.una
- kubernetes 集群搭建(二进制方式)
難釋懷
kubernetes容器云原生
Kubernetes作为当今最流行的容器编排平台,提供了强大的功能来管理和扩展容器化应用。除了使用kubeadm等工具简化集群的创建过程外,直接通过二进制文件安装Kubernetes组件也是一种常见的方法。这种方式给予用户更多的控制权,并且适用于那些希望深入理解Kubernetes内部工作原理的人。本文将详细介绍如何通过二进制方式搭建一个功能齐全的Kubernetes集群,并分享一些实用技巧和注意
- Dockerfile -> Docker image -> Docker container
BILLY BILLY
开发必备工具docker
1.Dockfile->Dockerimagedockerbuild-tshuai_image-fxxx/xxx/Dockerfile.(.不能少)出现:[+]Buildingxxx(10/17)=>[internal]loadbuilddefinitionfromDockerfile=>=>transferringdockerfile:…=>=>transferringcontext=>CACH
- mysql连接池
persist_gd
数据库
先建表createtableusers(idintnotnullauto_increment,namevarchar(50)notnull,primarykey(id))engine=innodbdefaultcharset=utf8;连接池importtimeimportpymysqlimportthreadingfromDBUtils.PooledDBimportPooledDB,Shared
- 优秀的Adobe Animation(AN)动画制作软件下载
inSOGwW
adobe
AdobeAN软件简介AdobeAnimation(简称AdobeAN)是由Adobe公司开发的一款优秀的动画制作软件,广泛应用于网页动画、角色动画及多媒体项目等领域。这款软件以其强大的功能和灵活的操作界面赢得了众多动画设计师和开发者的青睐。AdobeAN可以将创意转化为生动的动态效果,并且支持多种输出格式,使其在营销、教育和娱乐等多个行业中表现出色。AdobeANhttps://pan.baid
- LeetCode Top Interview 150 - Linked List
everecursion
leetcode算法职场和发展开源python数据结构
Alinkedlistisalineardatastructureconsistingofaseriesofnodes,whereeachnodecontainsdataandapointertothenextnode(inasinglylinkedlist)orbothpointerstothenextnodeandthepreviousnode(inadoublylinkedlist).The
- BUUCTF gyctf_2020_borrowstack
Bengd0u
第一个read的只能溢出0x10字节,也就是刚好覆盖返回地址,如果要ROP地方肯定不够所以栈迁移到bank,在那里ROP之前没遇到过这样的题,怎么迁过去我苦思冥想,最终还是看了wp,,用两个leave来控制rsp和rbp寄存器,太妙了leave是个伪代码,,分解开就是movrsp,rbppoprbp如果把栈构造成这样‘A’*0x60bank_addrleave_addr那么就有两次leavemov
- 应学短视频App数据库表设计文档
2401_89285805
数据库
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:||1|id|int|10|0|N|Y||||2|username|varchar|20|0|N|N||||3|password|varchar|20|0|N|N|||ROPTABLEIFEXISTSadmin;CREATETABLEadmin(idintNOTNULLAUTO_INCREMENT,usernamevarcha
- Mysql数据库和Sql语句
Jessica小戴
数据库mysqlsql
数据库管理:sql语句:数据库用来增删改查的语句(重要)备份:数据库的数据进行备份主从复制、读写分离、高可用(重要)Mysql数据库和Sql语句一、Mysql数据库1、数据库:组织、存储、管理数据的仓库2、数据库的管理系统(DBMS):实现对数据有效组织、管理和存取的系统软件3、数据库软件:mysql、oracle(大数据系统一般使用、大企业使用)、sql-server、MariaDB也是mysq
- Android Kotlin MVP 架构项目教程
常樱沙Vigour
AndroidKotlinMVP架构项目教程android-kotlin-mvp-architectureThisrepositorycontainsadetailedsampleappthatimplementsMVParchitectureinKotlinusingDagger2,Room,RxJava2,FastAndroidNetworkingandPlaceholderView项目地址:
- java nat 端口转发_NAT网络地址转换——静态NAT,端口映射(实操!!)
西街以西
javanat端口转发
NAT概述NAT(NetworkAddressTranslation,网络地址转换)是1994年提出的。当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但现在又想和因特网上的主机通信(并不需要加密)时,可使用NAT方法NAT的工作原理借助于NAT,私有(保留)地址的"内部"网络通过路由器发送数据包时,私有地址被转换成合法的IP地址,一个局域网只需使用少量IP
- Linux下passwd、shadow各字段含义
weixin_33924220
操作系统shell
/etc/passwd新建test用户[root@centos1~]#getentpasswdtest#getent查看passwd某个用户test:x:1015:1015:userinfo:/home/test:/bin/bash12345671、loginname:登录用名(test)2、passwd:密码(x)密码字段为x表示密码存在于shadow中可用pwunconv、pwconv修改,p
- linux配置nat端口转换,NAT网络地址转换——静态NAT,端口映射(实操!!)
胡大水
linux配置nat端口转换
NAT概述NAT(NetworkAddressTranslation,网络地址转换)是1994年提出的。当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但现在又想和因特网上的主机通信(并不需要加密)时,可使用NAT方法NAT的工作原理借助于NAT,私有(保留)地址的"内部"网络通过路由器发送数据包时,私有地址被转换成合法的IP地址,一个局域网只需使用少量IP
- HQL之投影查询
归来朝歌
HQLHibernate查询语句投影查询
在HQL查询中,常常面临这样一个场景,对于多表查询,是要将一个表的对象查出来还是要只需要每个表中的几个字段,最后放在一起显示?
针对上面的场景,如果需要将一个对象查出来:
HQL语句写“from 对象”即可
Session session = HibernateUtil.openSession();
- Spring整合redis
bylijinnan
redis
pom.xml
<dependencies>
<!-- Spring Data - Redis Library -->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redi
- org.hibernate.NonUniqueResultException: query did not return a unique result: 2
0624chenhong
Hibernate
参考:http://blog.csdn.net/qingfeilee/article/details/7052736
org.hibernate.NonUniqueResultException: query did not return a unique result: 2
在项目中出现了org.hiber
- android动画效果
不懂事的小屁孩
android动画
前几天弄alertdialog和popupwindow的时候,用到了android的动画效果,今天专门研究了一下关于android的动画效果,列出来,方便以后使用。
Android 平台提供了两类动画。 一类是Tween动画,就是对场景里的对象不断的进行图像变化来产生动画效果(旋转、平移、放缩和渐变)。
第二类就是 Frame动画,即顺序的播放事先做好的图像,与gif图片原理类似。
- js delete 删除机理以及它的内存泄露问题的解决方案
换个号韩国红果果
JavaScript
delete删除属性时只是解除了属性与对象的绑定,故当属性值为一个对象时,删除时会造成内存泄露 (其实还未删除)
举例:
var person={name:{firstname:'bob'}}
var p=person.name
delete person.name
p.firstname -->'bob'
// 依然可以访问p.firstname,存在内存泄露
- Oracle将零干预分析加入网络即服务计划
蓝儿唯美
oracle
由Oracle通信技术部门主导的演示项目并没有在本月较早前法国南斯举行的行业集团TM论坛大会中获得嘉奖。但是,Oracle通信官员解雇致力于打造一个支持零干预分配和编制功能的网络即服务(NaaS)平台,帮助企业以更灵活和更适合云的方式实现通信服务提供商(CSP)的连接产品。这个Oracle主导的项目属于TM Forum Live!活动上展示的Catalyst计划的19个项目之一。Catalyst计
- spring学习——springmvc(二)
a-john
springMVC
Spring MVC提供了非常方便的文件上传功能。
1,配置Spring支持文件上传:
DispatcherServlet本身并不知道如何处理multipart的表单数据,需要一个multipart解析器把POST请求的multipart数据中抽取出来,这样DispatcherServlet就能将其传递给我们的控制器了。为了在Spring中注册multipart解析器,需要声明一个实现了Mul
- POJ-2828-Buy Tickets
aijuans
ACM_POJ
POJ-2828-Buy Tickets
http://poj.org/problem?id=2828
线段树,逆序插入
#include<iostream>#include<cstdio>#include<cstring>#include<cstdlib>using namespace std;#define N 200010struct
- Java Ant build.xml详解
asia007
build.xml
1,什么是antant是构建工具2,什么是构建概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个3,ant的好处跨平台 --因为ant是使用java实现的,所以它跨平台使用简单--与ant的兄弟make比起来语法清晰--同样是和make相比功能强大--ant能做的事情很多,可能你用了很久,你仍然不知道它能有
- android按钮监听器的四种技术
百合不是茶
androidxml配置监听器实现接口
android开发中经常会用到各种各样的监听器,android监听器的写法与java又有不同的地方;
1,activity中使用内部类实现接口 ,创建内部类实例 使用add方法 与java类似
创建监听器的实例
myLis lis = new myLis();
使用add方法给按钮添加监听器
- 软件架构师不等同于资深程序员
bijian1013
程序员架构师架构设计
本文的作者Armel Nene是ETAPIX Global公司的首席架构师,他居住在伦敦,他参与过的开源项目包括 Apache Lucene,,Apache Nutch, Liferay 和 Pentaho等。
如今很多的公司
- TeamForge Wiki Syntax & CollabNet User Information Center
sunjing
TeamForgeHow doAttachementAnchorWiki Syntax
the CollabNet user information center http://help.collab.net/
How do I create a new Wiki page?
A CollabNet TeamForge project can have any number of Wiki pages. All Wiki pages are linked, and
- 【Redis四】Redis数据类型
bit1129
redis
概述
Redis是一个高性能的数据结构服务器,称之为数据结构服务器的原因是,它提供了丰富的数据类型以满足不同的应用场景,本文对Redis的数据类型以及对这些类型可能的操作进行总结。
Redis常用的数据类型包括string、set、list、hash以及sorted set.Redis本身是K/V系统,这里的数据类型指的是value的类型,而不是key的类型,key的类型只有一种即string
- SSH2整合-附源码
白糖_
eclipsespringtomcatHibernateGoogle
今天用eclipse终于整合出了struts2+hibernate+spring框架。
我创建的是tomcat项目,需要有tomcat插件。导入项目以后,鼠标右键选择属性,然后再找到“tomcat”项,勾选一下“Is a tomcat project”即可。具体方法见源码里的jsp图片,sql也在源码里。
补充1:项目中部分jar包不是最新版的,可能导
- [转]开源项目代码的学习方法
braveCS
学习方法
转自:
http://blog.sina.com.cn/s/blog_693458530100lk5m.html
http://www.cnblogs.com/west-link/archive/2011/06/07/2074466.html
1)阅读features。以此来搞清楚该项目有哪些特性2)思考。想想如果自己来做有这些features的项目该如何构架3)下载并安装d
- 编程之美-子数组的最大和(二维)
bylijinnan
编程之美
package beautyOfCoding;
import java.util.Arrays;
import java.util.Random;
public class MaxSubArraySum2 {
/**
* 编程之美 子数组之和的最大值(二维)
*/
private static final int ROW = 5;
private stat
- 读书笔记-3
chengxuyuancsdn
jquery笔记resultMap配置ibatis一对多配置
1、resultMap配置
2、ibatis一对多配置
3、jquery笔记
1、resultMap配置
当<select resultMap="topic_data">
<resultMap id="topic_data">必须一一对应。
(1)<resultMap class="tblTopic&q
- [物理与天文]物理学新进展
comsci
如果我们必须获得某种地球上没有的矿石,才能够进行某些能量输出装置的设计和建造,而要获得这种矿石,又必须首先进行深空探测,而要进行深空探测,又必须获得这种能量输出装置,这个矛盾的循环,会导致地球联盟在与宇宙文明建立关系的时候,陷入困境
怎么办呢?
 
- Oracle 11g新特性:Automatic Diagnostic Repository
daizj
oracleADR
Oracle Database 11g的FDI(Fault Diagnosability Infrastructure)是自动化诊断方面的又一增强。
FDI的一个关键组件是自动诊断库(Automatic Diagnostic Repository-ADR)。
在oracle 11g中,alert文件的信息是以xml的文件格式存在的,另外提供了普通文本格式的alert文件。
这两份log文
- 简单排序:选择排序
dieslrae
选择排序
public void selectSort(int[] array){
int select;
for(int i=0;i<array.length;i++){
select = i;
for(int k=i+1;k<array.leng
- C语言学习六指针的经典程序,互换两个数字
dcj3sjt126com
c
示例程序,swap_1和swap_2都是错误的,推理从1开始推到2,2没完成,推到3就完成了
# include <stdio.h>
void swap_1(int, int);
void swap_2(int *, int *);
void swap_3(int *, int *);
int main(void)
{
int a = 3;
int b =
- php 5.4中php-fpm 的重启、终止操作命令
dcj3sjt126com
PHP
php 5.4中php-fpm 的重启、终止操作命令:
查看php运行目录命令:which php/usr/bin/php
查看php-fpm进程数:ps aux | grep -c php-fpm
查看运行内存/usr/bin/php -i|grep mem
重启php-fpm/etc/init.d/php-fpm restart
在phpinfo()输出内容可以看到php
- 线程同步工具类
shuizhaosi888
同步工具类
同步工具类包括信号量(Semaphore)、栅栏(barrier)、闭锁(CountDownLatch)
闭锁(CountDownLatch)
public class RunMain {
public long timeTasks(int nThreads, final Runnable task) throws InterruptedException {
fin
- bleeding edge是什么意思
haojinghua
DI
不止一次,看到很多讲技术的文章里面出现过这个词语。今天终于弄懂了——通过朋友给的浏览软件,上了wiki。
我再一次感到,没有辞典能像WiKi一样,给出这样体贴人心、一清二楚的解释了。为了表达我对WiKi的喜爱,只好在此一一中英对照,给大家上次课。
In computer science, bleeding edge is a term that
- c中实现utf8和gbk的互转
jimmee
ciconvutf8&gbk编码
#include <iconv.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <string.h>
#include <sys/stat.h>
int code_c
- 大型分布式网站架构设计与实践
lilin530
应用服务器搜索引擎
1.大型网站软件系统的特点?
a.高并发,大流量。
b.高可用。
c.海量数据。
d.用户分布广泛,网络情况复杂。
e.安全环境恶劣。
f.需求快速变更,发布频繁。
g.渐进式发展。
2.大型网站架构演化发展历程?
a.初始阶段的网站架构。
应用程序,数据库,文件等所有的资源都在一台服务器上。
b.应用服务器和数据服务器分离。
c.使用缓存改善网站性能。
d.使用应用
- 在代码中获取Android theme中的attr属性值
OliveExcel
androidtheme
Android的Theme是由各种attr组合而成, 每个attr对应了这个属性的一个引用, 这个引用又可以是各种东西.
在某些情况下, 我们需要获取非自定义的主题下某个属性的内容 (比如拿到系统默认的配色colorAccent), 操作方式举例一则:
int defaultColor = 0xFF000000;
int[] attrsArray = { andorid.r.
- 基于Zookeeper的分布式共享锁
roadrunners
zookeeper分布式共享锁
首先,说说我们的场景,订单服务是做成集群的,当两个以上结点同时收到一个相同订单的创建指令,这时并发就产生了,系统就会重复创建订单。等等......场景。这时,分布式共享锁就闪亮登场了。
共享锁在同一个进程中是很容易实现的,但在跨进程或者在不同Server之间就不好实现了。Zookeeper就很容易实现。具体的实现原理官网和其它网站也有翻译,这里就不在赘述了。
官
- 两个容易被忽略的MySQL知识
tomcat_oracle
mysql
1、varchar(5)可以存储多少个汉字,多少个字母数字? 相信有好多人应该跟我一样,对这个已经很熟悉了,根据经验我们能很快的做出决定,比如说用varchar(200)去存储url等等,但是,即使你用了很多次也很熟悉了,也有可能对上面的问题做出错误的回答。 这个问题我查了好多资料,有的人说是可以存储5个字符,2.5个汉字(每个汉字占用两个字节的话),有的人说这个要区分版本,5.0
- zoj 3827 Information Entropy(水题)
阿尔萨斯
format
题目链接:zoj 3827 Information Entropy
题目大意:三种底,计算和。
解题思路:调用库函数就可以直接算了,不过要注意Pi = 0的时候,不过它题目里居然也讲了。。。limp→0+plogb(p)=0,因为p是logp的高阶。
#include <cstdio>
#include <cstring>
#include <cmath&