![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
wyk19950704
这个作者很懒,什么都没留下…
展开
-
进制转换(itoa函数的使用)
十进制整数与2,8,16进制数之间的转换将整型十进制数转化为所需要的进制数,并以字符串的形式返回。char* itoa(int value, char* string, int jinzhi);value —— 所需要转换的数string —— 转换后的字符串jinzhi —— 所期望的转换的进制所属标准库:stdlib.h程序实例:#include...原创 2015-05-23 23:48:49 · 1811 阅读 · 0 评论 -
高精度加法(适用非负整数)
高精度加法(仅适用于非负整数)问题引入:当两个整数相加但是数字的位数太大,用现有的数据类型并不能存储,这时候可以采用数组,栈等数据结构对数据进行存储。本文仅采用数组对非负整数的高精度加法进行处理。主要思想:先用两个字符串数组a[]和b[]将所需计算的两个加数存储,然后再用两个整形的数组存储两个加数(a1[]和b1[]),此时存储的时候从数字的低位开始存储(例如个位数存储在a1[0]中),然后从两个数原创 2016-04-08 13:51:32 · 356 阅读 · 0 评论 -
switch-case和if-else的效率比较
偶然之间突然想到测试一下if-elseif、if、if-else、switch-case结构以及单纯通过遍历数组匹配的执行效率,发现选用正确的程序结构对于程序执行效率的影响还是挺大的。首先说说if-elseif、if、if-else三种的执行情况,对于这三种情况执行结果是。。差别不大,三种结果各循环1亿次,两次跑出来结果如下: 可见这三种结构看上去对程序的执行效率影响不是太大。同时又测试了if-e原创 2016-03-25 20:56:41 · 14779 阅读 · 0 评论 -
HDU 2031 进制转换
问题描述: 输入一个十进制数N,将它转换成R进制数输出。样例输入: 输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=16, R<>10)。 7 2 23 12 -4 3样例输出: 为每个测试实例输出转换后的数,每个输出占一行。如果R大于10,则对应的数字规则参考16进制(比如,10用A表示,等等)。 111 1B -11思路:对于输入的每个数,用原创 2015-12-24 14:16:58 · 242 阅读 · 0 评论 -
HDU 2030 汉字统计
问题描述: 统计给定文本文件中汉字的个数。样例输入: 输入文件首先包含一个整数n,表示测试实例的个数,然后是n段文本。2 WaHaHa! WaHaHa! 今年过节不说话要说只说普通话WaHaHa! WaHaHa! 马上就要期末考试了Are you ready?样例输出: 对于每一段文本,输出其中的汉字的个数,每个测试实例的输出占一行。 [Hint:]从汉字机内码的特点考虑~14 9思路原创 2015-12-24 13:52:59 · 197 阅读 · 0 评论 -
HDU 2055 An easy problem
很简单的问题,主要注意的地方在于,每次scanf(“%c %d”, &x, &y) 读取之前,需要前清除一下上一次最后输入的回车键,否则第一个字符会直接读入回车。AC代码:#include <cstdio>int main(){ int T; while(~scanf("%d", &T)) { char x; int y; f原创 2015-12-31 13:49:49 · 221 阅读 · 0 评论 -
统计阶乘结果的末尾0的个数
统计结成结果的末尾0的个数今天看到一道题目,是让求解 1024! 末尾的0的个数。对于这个问题,作者首先想到了蛮力法。。先将阶乘的结果计算出来放入数组然后统计末尾0的个数。这样做的话首先得先进行较大规模的阶乘运算然后再得到所需结果。从另一个角度来考虑,得到0的最简方式为 2*5=10 ,故可以考虑阶乘数中2和5两个因子的个数,然而当阶乘数较大的时候,因子2的个数是远大于因子5的个数的,所以可以原创 2015-05-28 00:40:57 · 870 阅读 · 0 评论 -
HDU 1161 Eddy's mistakes(大小写转换)
题意:将输入的字符串中的所有大写字母转换为小写字母。思路:由于大写字母比其对应的小写字母的ASCII码小32,所以可以将所有大写字母的阿斯克码加上32,32=00100000=0x20 通过每一位和0x20或运算可以得到对应小写字母同理如果为要将小写字母转化为大写字母,可以将所有小写字母和11011111=0xDF进行与运算AC代码:#include <cstdio>#include <cstri原创 2015-12-13 14:16:52 · 328 阅读 · 0 评论 -
矩阵快速幂(学习)
矩阵快速幂(学习)转自:http://www.cnblogs.com/vongang/archive/2012/04/01/2429015.html两矩阵相乘,朴素算法的复杂度是O(N^3)。如果求一次矩阵的M次幂,按朴素的写法就是O(N^3*M)。既然是求幂,不免想到快速幂取模的算法,这里有快速幂取模的介绍,a^b %m 的复杂度可以降到O(logb)。如果矩阵相乘是不是也可转载 2015-05-26 23:39:19 · 267 阅读 · 0 评论 -
统计两个32位整数的bit位不同的个数
思路就是不断右移两个数,每次比较最低位是否相同,在比较最低位时通过将数和1进行与运算,就可以得到最低位的值。例如4和8,它们的二进制分别可表示为00000000000000000000000000000100和0000000000000000000000000001000.第一次:00000000000000000000000000000100 & 1 = 0000000000000000...原创 2018-05-11 23:23:34 · 612 阅读 · 0 评论