温故知新
qq_42907161
这个作者很懒,什么都没留下…
展开
-
结尾0的个数Python
结尾0的个数题目描述:给你一个正整数列表 L, 输出L内所有数字的乘积末尾0的个数。(提示:不要直接相乘,数字很多,相乘得到的结果可能会很大)。例如: L=[2,8,3,50],则输出:2最简单的就是元素全部相乘,计算末尾0的个数。但是这种暴力的解法肯定是不行的,(实际问题中)内存容易崩掉。其实最开始我一点想法都没有,参考了其他解法,做个简单记录。思路1既然不能相乘,那么看待问题就看透本质,这里就需要数学知识了。首先是0是怎么得到的,比如110,25,45,65,85,1010等等,想想就是原原创 2020-08-12 15:44:32 · 1287 阅读 · 0 评论 -
求1!+2!+3!+...+19!+20!
如题,求解1!+2!+3!+…+19!+20!之和。这道题很简单,循环20次,每次循环总和加上一个因子即可。代码如下:#include<stdio.h>int main(){ int sum=0,temp; for(int i=1;i<=20;i++){ //每次循环相加一个因子 temp = 1; for(int j=1;j<=i;j+...原创 2019-11-07 22:16:23 · 1772 阅读 · 0 评论 -
输入两个整数a和n,求a+aa+aaa+...+aa...a(n个a)之和
上周末做了几道例题,题很容易做出来,但是可以用技巧,将时间复杂度降低。上周时间紧,忘了分享出来,趁现在有时间,写下来备份。如题输入两个整数a和n,求a+aa+aaa+…+aa…a(n个a)之和。如输入3和5,输出3+33+333+3333+33333之和。其实这道题很简单,直接内循环求出每个因子的值,外循环n次,求和即可。普通版代码如下:#include<stdio.h>...原创 2019-11-07 22:10:51 · 18639 阅读 · 0 评论 -
解决warning C4305: 'initializing' : truncation from 'const double' to 'float'
今天在回顾C语言的时候,发现了一个问题,初始化浮点类型变量警告,提示类型不能转换。即warning C4305: 'initializing' : truncation from 'const double' to 'float'。其实就是小数3.1415926不能转换成float。小数这里是常量,是字面值,和符号常量以及常变量不一样。(虽然此处是const double)查询相关资料,原来C语...原创 2019-11-02 15:31:47 · 17183 阅读 · 0 评论 -
#define和const有何区别?符号常量和常变量的不同之处?
#define和const有何区别?大家在学C语言的时候肯定知道有两种形式来定义常量,#define PI 3.1415926const float PI = 3.1415926;其实这是在C++出现后导致C语言的“多样性”,C++为了弥补C语言的缺点,在C的基础上增加了面向对象,同时也兼容C。const定义的常变量其实是C++的写法,而**#define定义的符号常量**是C语言原始...原创 2019-11-02 11:05:24 · 601 阅读 · 0 评论 -
C语言的宏定义相关
C语言的宏定义相关目前大四cs已经保研,无奈自己太菜了,想重温一些C语言,写代码过程中发现宏定义之后程序运行时间“变长”(这是错误的)。后来就查阅了相关资料,其实是自己主观上的看法,宏定义并没有占用运行时间。宏定义格式:#define 标识符 字符串;如常用的#define PRICE 50宏名一般用大写字母表示,以示与变量区别。但这并非规定;宏定义不是C语句,所以不能在行尾加分号,否则,...原创 2019-11-02 10:29:51 · 2154 阅读 · 0 评论