tutorial
高精度模板
January 29, 2019
define N 1e5 struct bign { int len; int v[N]; // 赋值 bign=bign bign operator = (char* s) { len=strlen(s); memset(v,0,sizeof(v)); for(int i=0;i<len;i++) v[i]=s[len-i-1]-'0'; return *this; } //赋值 bign=int bign operator = (int x) { char s[N]; sprintf(s,"%d",x); return *this=s; } // 高精加 bign operator + (const bign &b) const { bign c; memset(c.
随机数基本使用方法
January 15, 2019
基本公式: 要取得[a,b)的随机整数,使用(rand() % (b-a))+ a; 要取得[a,b]的随机整数,使用(rand() % (b-a+1))+ a; 要取得(a,b]的随机整数,使用(rand() % (b-a))+ a + 1; 通用公式:a + rand() % n;其中的a是起始值,n是整数的范围。 要取得a到b之间的随机整数,另一种表示:a + (int)b * rand() / (RAND_MAX + 1)。 要取得0~1之间的浮点数,可以使用rand() / double(RAND_MAX)。
STL
January 11, 2019
STL C++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string, list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和大量常用数据结构操作。vector封装数组,list封装了链表,map和set封装了二叉树等,在封装这些数据结构的时候,STL按照程序员的使用习惯,以成员函数方式提供的常用操作,如:插入、排序、删除、查找等。让用户在STL使用过程中,并不会感到陌生。
