准备工作...

upper_bound(S, S+n, num) 非下降序列S,返回第一个大于num的值的指针 1 2 2 2 3

lower_bound,第一个大于等于num的值的指针 1 2 2 2 3

string A,B A.find(B) 返回B出现在A中位置 没有就返回-1

A.c_str() string转成c式字符数组 A.substr(0, 2) 临时一个string存A的前两个字符(A[0],A[1])(区间是前开后闭)

stringstream ss; ss.clear()神他妈清空状态,ss.str("")清空内容

scanf %c时读入任何字符包括空格tab回车 其他情况以这三个作为分隔

缓冲区: 空格233空格, scanf%d 第一个空格抛弃 写入233 第二个空格会留在缓冲区

gets读到回车结束,并且会把回车留在缓冲区

%*d空读,读了但是不写入: scanf( "%d %*c %d", &x, &y );

sscanf(char指针, “控制格式”, 写入的变量)把字符数组写入变量里,配合gets食用更加

数字和字符连续出现要读 scanf“%d%s”可破 (入坑时被%c骗了)

(1,2)    (2,3) (3,4) 这样有任意空格的 scanf("空格(%d,%d)", ...)可破

set.insert(233)

set<int, mycmp>s mycmp可以是定义了排序规则的结构体 仿函数什么的

map<char, int, mycmp> map排序是排第一个东西

map<string,float>m;
     m["jack"]=98.0;
     m["mike"]=87.5;
     m["jane"]=100.0;
     m["babala"]=78.0;
     m.erase("jane"); 
臭名昭著的给字符串们标号

map[] = 直接修改键值,会覆盖掉之前的(如果有)

mapStudent.insert(pair<int, string>(1, "student_one")); 插入pair 感觉好记,如果原来有键值就不会插入这个

mapStudent.insert(map<int, string>::value_type (1, "student_one")); 第二种插入

set.find()返回找到元素的迭代器 set.count() 返回元素的个数(当然是0/1)

queue priority_queue deque太常用...list bitset不常用...跳过了...

%o 八进制 %x 十六进制  输出%: %%

转载于:https://www.cnblogs.com/DearDongchen/p/7629375.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值