STL运用
code_mryxj
这个作者很懒,什么都没留下…
展开
-
lower_bound用法
lower_bound的headfile是algorithm.lower_bound的工作原理就是二分查找了。lower_bound的作用:lower_bound的返回值减去数组的地址就是要查找的元素在数组中的位置。即:Pos = lower_bound(a, a+10, 3)-a;那么Pos就是在数组a[10]中的位置了。upper_bound()与lower_bound()使用方法出处:http原创 2015-04-10 00:49:12 · 4270 阅读 · 0 评论 -
poj1256 Anagram (next_permutation())
题意:按照它规定的字典序 'A'#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define rep原创 2016-01-09 18:52:29 · 469 阅读 · 0 评论 -
hdu1058 & hdu3199
这两题算同一类型,都是给你几个素数,问只能由这几个素数当做因子的数排列一下,第多少个是? 整体思想都是用已生成的序列是构造新的数。 hdu1058题意:一个数的因子只能是2,3,5,7 ,满足这样条件的数叫humble数,问第多少个是多少。 和紫书上一道丑数 题意近乎一模一样,开始做法就是用优先队列和set判重(后来发现也可以不需要借用set判重)#include <fstream>#inc原创 2015-12-19 14:15:52 · 538 阅读 · 0 评论 -
hdu2072 单词数
STL大水题 ,注意切割字符串#include<bits/stdc++.h>using namespace std;set<string>dict;int main(){ string s,buf; while(getline(cin,s)) { dict.clear(); stringstream ss(s); while(ss>>bu原创 2015-12-18 13:36:19 · 356 阅读 · 0 评论 -
poj1002(map水题 )
给你一些字符,统一转化成电话号码,放在map 输出他们个数。 string 时间TLE char 过了#include <fstream>#include <iostream>#include <string>#include<cstring>#include <complex>#include <math.h>#include <set>#include <vector>#inc原创 2015-12-12 17:33:11 · 731 阅读 · 0 评论 -
算法入门竞赛 第五章例题 题解
5-1 Where is the Marble? uva10474 题意:在一排数中查询某个数的位置。 思路:运用STL算法库sort,lower_bound().(查找大于等于x的第一个位置),#include<bits/stdc++.h>using namespace std;const int maxn=10100;int a[maxn];int main(){ int原创 2015-10-25 20:46:50 · 1075 阅读 · 0 评论 -
c++ 中 pair 的 使用方法
pair的类型:pair 是 一种模版类型。每个pair 可以存储两个值。这两种值无限制。也可以将自己写的struct的对象放进去。。pair<string,int> p;pair<int ,int > p;pair转载 2015-05-29 11:33:52 · 406 阅读 · 0 评论 -
make_pair
好记性不如烂笔头:在《C++ Templates》看到这个函数,发现正是前段时间写项目程序所要用到的,可惜当时还不知道有这个用法,当时是自己写了个结构体。。】 Utilities 由短小精干的类和函数构成,执行最一般性的工作。 这些工具包括: general types 一些重要的C函数 numeric limitsPairs C++标准程序库中凡是“必须返回两个值”的函数, 也都会转载 2015-05-29 11:32:57 · 405 阅读 · 0 评论 -
栈的应用——四则表达式求值
栈的应用有很多,四则运算是一个比较常见的应用。对于四则运算,括号内的要先运算,而且还要先乘除后加减,又要涉及到负数和浮点数,看上去简简单单的式子,其实暗藏杀机。 常用的方法是利用后缀表达式(逆波兰)进行计算。主要分为两步: (1)将中缀表达式转化为后缀表达式(栈用来进出运算的符号): 从左到右遍历中缀表达式的每一个数字和符号,若是数字就输出,既成为后缀表达式的一部分,若是符号,原创 2015-04-19 16:44:07 · 609 阅读 · 0 评论 -
c++ vector的成员函数解析
vector是线性容器,它的元素严格的按照线性序列排序,和动态数组很相似,和数组一样,它的元素存储在一块连续的存储空间中,这也意味着我们不仅可以使用迭代器(iterator)访问元素,还可以使用指针的偏移方式访问,和常规数组不一样的是,vector能够自动存储元素,可以自动增长或缩小存储空间,vector的优点:可以使用下标访问个别的元素迭代器可以按照不同的方式遍历容器可以在容器的末尾增加或删转载 2015-04-10 01:14:25 · 1056 阅读 · 0 评论 -
Hdu 1894 String Compare
题意: 给一些单词,问这些单词前缀部分有多少个。、思路:水题,坑爹在与,我W 了很多次,TLE 是因为用了map错判了复杂度... 还有 ios::sync_with_stdin(false),最后 直接结果取模,两处地方w了很多次。 正确解法,直接用string 暴力。#include #include #include #include原创 2016-01-09 22:29:09 · 322 阅读 · 0 评论