C++
lulipeng_cpp
计算机迷
展开
-
c++ problem
大家先看下面一段代码(代码转载而来)#include int *pPointer;void SomeFunction();{ int nNumber; nNumber = 25; pPointer = &nNumber;}void main(){ SomeFunction(); cout}VC原创 2011-12-06 12:44:41 · 1041 阅读 · 3 评论 -
HDU4144 TLE
这题算是一道比较简单的了! 关键点: ①输入的字符串中每5个字符表示一个加密前的字符。 ②每个加密前的字符用5位二进制码代替。 ③输入的字符串中字母表示对应位的二进制码为0,数字表示对应位的二进制码为1。 额,可是很纠结的是我的原创 2012-03-09 12:11:37 · 889 阅读 · 0 评论 -
C++ 获取整数各位数字
设定输入正整数,获取各位数字。 第一种方式: 注意: 缺省为9位,比如说输入123,则输出(从个位向更高位输出)会是3 2 1 0 0 0 0 0 0,也就是说更高位会输出0。 代码如下:#includeusing namespace std;const long a原创 2012-03-15 23:40:37 · 22526 阅读 · 0 评论 -
C++ 求阶乘 四种方法
来总结下求阶乘的各种方法哈。 写在最前:①各个代码只是提供了求阶乘的思路,以便在实际需要时再来编码,代码并不健壮!②各个程序都在1到10内测试正确。 代码一:#includeusing namespace std;int fac(int);int main(){ int n; while(cin>>n) { cout原创 2012-03-21 23:26:26 · 48419 阅读 · 5 评论 -
HDU 1576 A/B 扩展欧几里德算法
详细扩展欧几里德算法介绍,参见点击打开链接和点击打开链接解决该题的关键是:1、了解扩展欧几里德算法,可以运用其解出gcd(a,b)=ax1+by1中的x1、y1的值2、由题可得以下内容:n=A%9973,则n=A-A/9973*9973。又A/B=x,则A=Bx。所以Bx-A/9973*9973=n。即Bx-9973y=n。到这里我们可以发现:只要求出x的值,即可算出x%997原创 2012-05-29 14:07:35 · 5677 阅读 · 7 评论 -
最大公约数 最小公倍数
求解最大公约数和最小公倍数。有两大种方法:求解最大公约数有欧几里德算法和stein算法。其中欧几里德算法又分为一般的和扩展的欧几里德算法。而求解两数的最小公倍数则利用了它们的最大公约数,有公式lcm(a,b)=a*b/gcd(a,b)。lcm是最小公倍数的英文缩写,gcd同样。所以求解最小公倍数的代码只在一般欧几里德算法分析中介绍下,读者可以举一反三。 一、欧几里德算法1、原创 2012-04-03 16:44:06 · 2684 阅读 · 0 评论