算法入门经典第5章
leafinsnowfield
这个作者很懒,什么都没留下…
展开
-
TeX括号
#include int main() { int c,q=1; while((c=getchar())!=EOF) { if(c=='"') { printf("%s",q?"``":"''"); q=!q; }else{ printf("%c",c); } } return 0; }原创 2014-11-29 17:20:02 · 333 阅读 · 0 评论 -
重载bign常用运算符
111原创 2014-11-30 19:04:08 · 489 阅读 · 0 评论 -
阶乘的精确值
#include #include const int maxn=3000; int f[maxn]; int main(void){ int i,j,n; scanf("%d",&n); memset(f,0,sizeof(f)); f[0]=1; for(i=2;i<=n;i++){//注意是i是从2开始的 int c=0; for(j=0;j<=maxn-1;j++){原创 2014-11-30 15:00:55 · 439 阅读 · 0 评论 -
高精度运算之小学生算法
#include int main(void) { int a,b; while(scanf("%d %d",&a,&b)==2){ if(!a&&!b){//此时的a和b都不为0 break; } int c=0,ans=0; for(int i=9;i>=0;i--){ c=(a%10+b%10+c)>9?1:0; ans+=c; a/=10;原创 2014-11-30 14:28:06 · 327 阅读 · 0 评论 -
周期串
注意:1临时定义变量,比如i和j定义再循环体内,因此在循环体后就无法访问它们在使用前才定义变量能让程序更加清晰。但是这个语法不是ANSIC的所以程序的扩展名保存成.cpp#include #include int main() { char word[100]; scanf("%s",word); int len=strlen(word); for(int i=1;i<=len;i++原创 2014-11-29 17:27:15 · 337 阅读 · 0 评论 -
字母排序
stdlib.h中的排序函数qsort。使用库函数排序的代码量并不比用冒泡排序放小,但是速度却快很多原创 2014-12-01 01:55:43 · 360 阅读 · 0 评论 -
strcmp函数
C/C++函数,比较两个字符串。设这两个字符串为str1,str2,若str1==str2,则返回零;若str1>str2,则返回正数原创 2014-12-01 01:24:55 · 324 阅读 · 0 评论 -
WERTYU
#include char *s="`1234567890-=QWERTYUIOP[]\ASDFGHJKL;'ZXCVBNM,./"; int main(){ int i,c; while((c=getchar())!=EOF) { for(i=1;s[i]&&s[i]!=c;i++){ if(s[i]){ putchar (s[i-1]); }else{原创 2014-11-29 16:59:53 · 337 阅读 · 0 评论 -
设计一个结构体bign来存贮高精度非负整数
const int maxn=3000; struct bign { int len,s[maxn]; bign(){memset(s,0,sizeof(s));len=1;} }; 上面的结构体中有一个函数,称为构造函数,它是c++中特有的,作用是进行初始化。事实上,当定义bign X时候,就会执行这个函数,把x.s清零,并赋值x.len=1; 需要注意的是在c++中,并不需要typed原创 2014-11-30 15:18:25 · 844 阅读 · 0 评论 -
排序与检索6174问题
int get_next(int x) { int a,b,n; char s[10]; sprintf(s,"%d",x);//化为字符串 n=strlen(s); for(int i=0;i<n;i++)//冒泡排序 { for(int j=i+1;j<n;j++) { if(s[i]>s[j]) { char t=s[i]; s[i]=s[j]原创 2014-11-30 21:58:12 · 332 阅读 · 0 评论 -
bign的结合有问题无法运行
#include iostream #include #include using namespace std; const int maxn=200; struct bign{ bign(){ int len,s[maxn]; memset(s,0,sizeof(s)); len=1; } bign(int num){ *this=num; } bign(char *nu原创 2014-11-30 21:14:57 · 363 阅读 · 0 评论 -
bool
1、类型不同 bool为布尔型用作逻辑判断 BOOL在typedef int BOOL; 在typedef long BOOL; 2、长度不同 bool只有一个字节 BOOL长度视实际环境来定,一般可认为是4个字节 3、取值不同 bool取值false和true,是0和1的区别; false可以代表0,但true有很多种,并非只有1。原创 2014-11-30 19:21:41 · 677 阅读 · 0 评论 -
6147自己写的
注意等号与赋值问题#include #include using namespace std; int get_next(int x) { int a,b,n; char s[10]; sprintf(s,"%d",x); n=strlen(s); for(int i=0;i<n;i++){ for(int j=i;j<n;j++){ if(s[i]>s[j]){原创 2014-12-01 01:03:28 · 413 阅读 · 0 评论