CodeForces 114B 【STL应用】】的更多相关文章

思路: 原来string类能sort 和 swap....太强了.... 注意:字典序最小输出,因为某个地方写挫了,sort了n发,代码挫. #include <bits/stdc++.h> using namespace std; typedef long long LL; int tol; map<string,int>id; map<int,string>xs; string ss[20],sss[20]; bool ma[20][20]; int main()…
D. Divide by three, multiply by two time limit per test 1 second memory limit per test 256 megabytes input:standard input output:standard output Polycarp likes to play with numbers. He takes some integer number x, writes it down on the board, and the…
题面: 传送门 题目大意: 给定一个空集合,有两种操作: 一种是往集合中插入一个元素x,一种是给三个数x,k,s,问集合中是否存在v,使得gcd(x,v)%k==0,且x+v<=s若存在多个满足条件,则输出使得v⊕x最大的v. 分析: 首先,gcd(x,v)%k==0,由数论知识得该条件等价于x%k==0&&v%k==0 那么,我们怎么快速求出能整除k的v呢 对操作1输入的数x的每个因数,我们建立一个集合 s[i]存储能被i整除的所有x 且由于c++ STL的set的特性,集合内元素…
Portal: http://codeforces.com/problemset/problem/190/C 一道卡输入输出的蛋疼题 题意:给你一个由pair和int所组成的沙茶字符串(最大含有1e5个单词),输出合法的pair序列 这道题可以拿栈做,也就是vector或stack 呵呵 (vector==stack)=1 Examples Input 3pair pair int int int Output pair<pair<int,int>,int> #include<…
A. Contest time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Misha and Vasya participated in a Codeforces contest. Unfortunately, each of them solved only one problem, though successfully sub…
题目链接: http://codeforces.com/gym/100526 http://acm.hunnu.edu.cn/online/?action=problem&type=show&id=11674&courseid=0 题目大意: N个学生M道题(1<=N<=12,1<=M<=30),每道题只有正误两种选项(0 1),每个学生的答题情况和正确题数已知,求标准答案可能有多少种. 如果标准答案只有一种则输出标准答案,否则输出解的个数. 题目思路: […
题目链接: http://codeforces.com/problemset/problem/696/A 题目大意: 一个满二叉树,深度无限,节点顺序编号,k的儿子是k+k和k+k+1,一开始树上的边权都为0 N(N<=1000)个操作,操作两种,1是从u到v的路径上的所有边权+w,2是求u到v的边权和.(1 ≤ v, u ≤ 1018, v ≠ u, 1 ≤ w ≤ 109) 题目思路: [STL][模拟] 用map写很快,第一次用很生疏.现学只看了一点点. 因为是满二叉树所以直接暴力求LCA…
[题目链接] http://codeforces.com/problemset/problem/701/C [题目大意] 给出 一个字符串,里面包含一定种类的字符,求出一个最短的子串,使得其包含该字符串中的所有种类的字符 [题解] 利用双指针,每次找到包含所有字符的串,用这个串的长度去更新答案,在判断该字符在选定串中出现次数的时候可以调用map,而统计不同种类字符个数则可以利用STL中的set进行统计. [代码] #include<set> #include<map> #inclu…
题目链接:http://codeforces.com/problemset/problem/799/B 题目大意:有n件T恤,每件T体恤都分别有价格(每件衣服的价格不重复).前面的颜色.背部的颜色三种属性.接下来有m个人每个人都有一种喜欢的颜色,他们按先后顺序选择衣服,如果没有喜欢的颜色的衣服了就输出“-1”,否则选择其中符合条件的衣服中价值最小的.输出每个人要付出的钱. 解题思路:使用c++STL里的set(会自动按照从小到大的顺序排好,不存在重复),设置set[1],set[2],set[3…
一道用STL的贪心,正好可以用来学习使用STL库 题目大意:给出n条可以内含,相交,分离的线段,如果重叠条数超过k次则为坏点,n,k<2e5 所以我们贪心的想我们从左往右遍历,如果重合部分条数超过了k,就必须去除线段,(此时从左边看去除线段后不会出现冲突,右边还有剩余很多线段未知)所以我们选择去除这些重合线段里右端最右的部分 实现: #include<bits/stdc++.h>using namespace std;typedef pair<int,int> pii;typ…