几何+map套set——cf1163C】的更多相关文章

能灵活用map+set的组合就能过这题了 /* 分成三个步骤来做: 1.通过点两两构造线 by=ax+c,先求a,b,再求c,用gcd(d,b)简化 2.线去重:用map+pair 3.统计交点 */ #include<bits/stdc++.h> #include<map> using namespace std; #define ll long long #define maxn 2005 map<pair<int,int>,set<int> &g…
地址  Problem - C - Codeforces 题目 题意 一个学校有n个人参加比赛,他们分别属于ui队,每个人的能力值为si 当每个队需要1~n个人的时候,这个学校能参加的人的能力值和最大为多少 解析 map<int,vector<int>>存储不会爆 每一队直接处理出队伍人数为1~n时的能力值最大和,这样不会超时,看代码 代码 #include <iostream> #include <algorithm> #include <vecto…
先把公比为1,即前项 中项 末项相同的统计出来.对每一类数C(n,3)即可. 然后我们发现,因为a1*a3=(a2)^2,所以a1和a3进行质因子分解之后,每一个质因子的指数的奇偶性必然相同,否则无法满足乘积为完全平方数. 然后sqrt(100000)以内的素数只有65个,我们对于每一个数,用unsigned long long存一个01串,代表前64个素因子的奇偶性,再单独用一个布尔存第65个. 然后该数还有可能有一个大素因子(>sqrt(x)),单独存一下,这样用一个三元组唯一标示每一个数.…
题意: 思路:考虑构造最小的单位矩形然后平铺 单位矩形中每种矩形的数量可以根据比例算出来,为c[i]/d,其中d是所有c[i]的gcd,如果能构造成功答案即为d的因子个数 考虑如果要将两种矩形放在同一行那他们的w一定相等,且对于每一行h全部出现过并且比例相当 具体实现的时候用map套vector,发现map有好多写法 #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef unsigned int u…
近期项目查询数据库太慢,持久层也没有开启二级缓存,现希望采用Redis作为缓存.为了不改写原来代码,在此采用AOP+Redis实现. 目前由于项目需要,只需要做查询部分: 数据查询时每次都需要从数据库查询数据,数据库压力很大,查询速度慢,因此设置缓存层,查询数据时先从redis中查询,如果查询不到,则到数据库中查询,然后将数据库中查询的数据放到redis中一份,下次查询时就能直接从redis中查到,不需要查询数据库了. redis作为缓存的优势: 1.内存级别缓存,查询速度毋庸置疑. 2.高性能…
题目大意: 给定一个有n个元素的数组,有m个操作,分为两种,分别是询问第k个x的下标和把下标为x的数修改为k. 题目设置了强制在线,故无法预先得知所有操作数. 思路: 有三种思路. 第一种:平衡树 by std(也就是我) 为每一个数建一个平衡树,平衡树中储存的是这个数出现的每个下标,则询问操作对应名次树的查询k小数操作,单点修改直接维护一个数组记录每个位置上的值,把原来的数对应的下标从平衡树里删除,再把新数的平衡树中加入这个下标即可. 实现时开一个从int到平衡树的map,这样预处理复杂度O(…
学OI一年了,到现在联赛所需要的知识已经基本学完了.现在,有必要回过头来,总结总结自己一年来学到的知识以及得到的经验教训. 基础 语言基础 C++的语言基础啥的就略了吧. 算法复杂度分析 O:复杂度的上限. Ω:复杂度的下限. Θ:复杂度的上限与下限. STL与<algorithm> STL http://www.cplusplus.com/reference/stl 全称Standard Template Library(标准模板库). vector:动态数组. list:双向链表. set…
SpringAOP与Redis搭建缓存 近期项目查询数据库太慢,持久层也没有开启二级缓存,现希望采用Redis作为缓存.为了不改写原来代码,在此采用AOP+Redis实现. 目前由于项目需要,只需要做查询部分: 数据查询时每次都需要从数据库查询数据,数据库压力很大,查询速度慢,因此设置缓存层,查询数据时先从redis中查询,如果查询不到,则到数据库中查询,然后将数据库中查询的数据放到redis中一份,下次查询时就能直接从redis中查到,不需要查询数据库了. redis作为缓存的优势: 1.内存…
本文转载自:http://coolshell.cn/articles/7270.html ================================================ 全文译自墙外文章"NoSQL Data Modeling Techniques",译得不好,还请见谅.这篇文章看完之后,你可能会对NoSQL的数据结构会有些感觉.我的感觉是,关系型数据库想把一致性,完整性,索引,CRUD都干好,NoSQL只干某一种事,但是牺牲了很多别的东西.总体来说,我觉得NoSQL…
·背景 前一阵,一直在研究一些ML的东东,后来工作关系暂停了一阵.现在继续把剩下一些热门的算法再吃吃透,"无聊+逗比"地把他们搞到MapReduce上.这次选择的入手对象为Apriori,也就是大家俗称的"关联规则挖掘",有别于CF(协同过滤)的正交输出.再俗一点,就是常被人提及的"啤酒+面包"的故事. ·Apriori算法简介 在关联规则挖掘方面,有两项著名的算法:Apriori和FPgrowth.两者各有特点,由于计算量级别的差异,越来越多的…
原文来自“NoSQL Data Modeling Techniques”,由酷壳网陈皓编译<NoSQL数据建模技术>.这篇文章看完之后,你可能会对NoSQL的数据结构会有些感觉.我的感觉是,关系型数据库想把一致性,完整性,索引,CRUD都干好,NoSQL只干某一种事,但是牺牲了很多别的东西.总体来说,我觉得NoSQL更适合做Cache. 下面是正文: NoSQL数据库经常被用作很多非功能性的地方,如,扩展性,性能和一致性的地方.这些NoSQL的特性在理论和实践中都正在被大众广泛地研究着,研究的…
说明:从严格的列式存储的定义来看,Hbase并不属于列式存储,有人称它为面向列的存储,请各位看官注意这一点. 行式存储 传统的数据库是关系型的,且是按行来存储的.如下图: 其中只有张三把一行数据填满了,李四王五赵六的行都没有填满.因为这里的行结构是固定的,每一行都一样,即使你不用,也必须空到那里,而不能没有.来一张形象的图: 不管你坐或不坐,座位都在那里,不离不弃. 列式存储 为了与传统的区别,新型数据库叫做非关系型数据库,是按列来存储的.如下图: 初次看列式存储稍微有点懵,下面给出行存与列存的…
Description 链接 Solution 问题其实就是从一个点出发,每次可以走与其曼哈顿距离恰好为一个常数\(d\)的点 显然不可能一一走完所有的边,这样复杂度下界至少是\(O(ans)\) 我们采用折中方式:间接统计 (1)找出从起始点能到达哪一些点 (2)统计对于这些点之中的每一个点,与其距离为d的点有多少,求和除二就是总边数 首先考虑第一步,如果我们通过枚举边的思路进行广搜,又要触及边的数目过多这一限制.考虑距离一个点\((x_0,y_0)\)曼哈顿距离为\(d\)的点\((x,y)…
题意:首先T组数据,每组数据包括:第一行:一个n,m,然后下面有一个n行m列的01矩阵. 最后一行输入四个数字,分别是起点的横纵坐标,终点的横纵坐标.询问从起点到终点,最少要几步,如果到不了输出-1   题目给定要求:1.不能停在原地 2.如果当前点是0,那么只能走上下,如果当前点是1,只能走左右.3.每走一次,整个01矩阵反过来(0变成1,1变成0这样) 思路:注意到走2次就会变回原来的图,那么只需要分情况进行广搜即可,即:记录下当前点步数然后余2,就知道当前点是0还是1.然后再根据01的走动…
首先跑正反两遍dij求由起点/终点到某点的最短路条数,这样条件一就转化为f(S,A)*f(T,A)+f(S,B)*f(T,B)=f(S,T).同时建出最短路DAG,这样图中任何一条S到T的路径都是最短路径,对于条件二就只需要判断A是否能走到B.注意到空间开的非常大.那么对于条件二的可达性显然是可以bitset优化的.对于条件一可以map套bitset.两者and再count一下就可以了.bzoj的空间限制开小了于是这种做法就直接MLE了. #include<iostream> #include…
Atitit.nosql api 标准化 以及nosql数据库的实现模型分类差异 1. 常用的nosql数据库MongoDB  Cassandra1 1.1. 查询> db.blogposts.find( { "author.name" : "Jane" } )1 1.2. 保存save  insert1 1.3. Update ,delete2 1.4. MongoDB 与 RDBMS Where 语句比较2 1.5. MongoDB OR 条件2 1.5.…
\(\color{#0066ff}{ 题目描述 }\) 有一个无向图G,每个点有个权值,每条边有一个颜色.这个无向图满足以下两个条件: 对于任意节点连出去的边中,相同颜色的边不超过两条. 图中不存在同色的环,同色的环指相同颜色的边构成的环. 在这个图上,你要支持以下三种操作: 修改一个节点的权值. 修改一条边的颜色. 查询由颜色c的边构成的图中,所有可能在节点u到节点v之间的简单路径上的节点的权值的最大值. \(\color{#0066ff}{输入格式}\) 输入文件network.in的第一行…
多叉树结构:JSON数据解析(二) 在上篇文章中提到了JSON数据解析的基本方法,但是方法效率太低,这里接着上篇文章写写如何利用多叉树结构,定义对象,实现JSON数据字段快速随机访问. JSON数据通常就是无根节点的多叉树结构,对于这种无根节点的多叉树,要实现快速随机访问得经历两个过程:隐式构造根节点,建立多叉树和遍历多叉树. 3.2 优化的方法--无根节点多叉树随机访问 对于json的这种数据结构,目前大多数人的做法都是利用list,或者LinkedHashMap去实现,一层层地map套map…
题目描述 给定一个由小写字母a到z组成的字符串S,其中第i个字符为S[i](下标从0开始).你需要完成下面两个操作:INSERT c  其中c是一个待输入的字符.你需要在字符串的末尾添加这个字符.保证输入的字符同样是a到z之间的一个小写字母.QUERY x   其中x是一个输入的整数下标.对于这个询问,你需要回答在S当中和S[x]相等且与x最近的距离.输入保证x在当前字符串中合法.例如S = "abcaba",如果我们操作:INSERT a     则在S的末端加一个字符a,S变成&q…
序言 在很久以前,Spring的配置文件是基于XML的.它的名字就是applicationContext.xml,没错,就只有这一个xml文件. 它里面配置了所有的东西.但是数据库信息通常会单独拿出来,放入一个properties文件,通常叫db.properties. 后来觉着一个xml里的东西实在太多了,就按功能拆分成几个独立的xml. spring-dao.xml是dao层,spring-service.xml是service层,spring-tx.xml是事务相关,dispatcher-…
于是就迎来\(10\)天的自闭考试了,每天写点小总结吧. Day8 第一天就很自闭啊,考题分别是数学题+建模题+图论. 前两道题都没有什么算法,但是难度还是有的,于是就做不太出来,特别是第一题.第二题考试的时候几乎想到了正解,但是由于太急促实现方式没有写好,最后就写挂了,把原本的暴力分也丢了. 第三题是建图+欧拉回路,难度还是比较大的,考后已经订正了. 分数有点惨,以后写正解一定要对拍,不然不如交暴力稳. Day9 今天的题还是很难啊,算法是网络流+图论+线性基. 第一题是一个建模最大流,考场上…
等差数列 为了检验学生的掌握情况,jyy布置了一道习题:给定一个长度为N(1≤N≤100,000)的数列,初始时第i个数为vi(vi是整数,−100,000≤vi≤100,000),学生们要按照jyy的给出的操作步骤来改变数列中的某些项的值.操作步骤的具体形式为:A s t a b (s,t,a,b均为整数,1≤s≤t≤N,−100,000≤a,b≤100,000),它表示,在序列的[s,t]区间上加上初值为a,步长为b的等差数列.即vi变为vi+a+b×(i−s)(对于s≤i≤t). 在焦头烂…
连续区间的最大公约数 思路:参照BZOJ 4488: [Jsoi2015]最大公约数脑补出的一个\(map\)套\(vector\)的写法,写起来比线段树短,运行时间比线段树快. 代码: #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimize(4) #include<bits/stdc++.h> using namespace std; #define fi first #define se second #de…
坑先占着QwQ 不太喜欢写Blog, 因此我的Blog一直很冷清,但是还是想写写这种游记啦,反正是给自己看的 Day -4 颓了一整天,一道题都没写 于是无聊用GL写了一个海战游戏,让两个程序对打-- Day -3 颓,没做题 Day -2 颓,没做题 Day -1 颓,回家泼隔膜 Day 0 出发辣 飞机上很无聊 到了广州真的很热 于是挤了好久的地铁,全是人--快自闭了-- 于是--走下地铁-- 还走了半小时的路-- 走了半小时的路到宾馆 结果--家长们还走了好久才到-- 然后还被强行带出去吃…
Description Input Output 输出到标准输出流中. 若干行,对于每个操作 1 和操作 5,输出一个数表示答案. Sample Input Sample Input1 5 8 1 2 3 2 1 1 1 3 5 1 5 2 2 4 1 2 4 3 3 4 0 5 1 1 2 1 1 5 Sample Input2 10 15 5 4 3 5 4 1 5 4 3 1 2 8 580347 4 6 503576 1 2 5 5 8 11 1 2 6 4 7 565239 3 6 3…
都这么大了,you这些怎么能算生词呢,难道三年级以前就有人做蓝题了吗(是我不配) 我觉得这道题出难一点点的话,可以整行读入什么的(口嗨怪).先看题目,对于每个生词,输出他出现在了哪些文章(需要排序).看到这里,一些常用STL的大佬应该就会眉开眼笑了 这题能蓝???,当然对于标签中Trie树之类的方法,应该还是有这个难度,这里只讲我的思路 又是字符串,又是排序的,还需要考虑一个文章中重复出现的情况,直接map套set,简单粗暴还不出错,但是时间空间应该没其他算法这么优,我运行了1.8s左右 在读入…
前文 初三下学期进入新的学习,对于前两年的学习内容因为各种原因 上课打游戏,睡觉,看视频 已经遗忘,忘记如何使用,算是重新学习一次信息学,希望能尽快将以前的内容弥补上来,争取能在CSP-2020取得一个好成绩吧 STL 1. vector vector,应该算是STL中使用较多的一种容器之一,他的用法其实数组有一点相似,但是更加优越(不然为什么STL这么强). 优越在什么地方呢?在使用数组时,因为题目要求,数组的长度决定了一定的内存,但是题目的内存限制我们在做题的时候不太容易把控,太小会RE,太…
总结:入题尽量快,想到做法要先证明是否正确是否有不合法的情况,是否和题目中描述的情景一模一样.    不要慌 反正慌也拿不了多少分,多分析题目的性质如果不把题目的性质分析出来的话,暴力也非常的难写,有的时候甚至不写暴力更好,可能暴力代码难度过高且不易调出. 注意证明算法的正确性和复杂度不要盲目去刚去码,把所有情况都考虑清楚了,把可能会发生的情况也考虑进去,tink twice code once. LINK :因为死刚题,没检查丢50,暴力没写对丢20,所以爆零且后悔莫及的一场比赛. T1 感觉…
数据模型 1.时序数据的特征 时序数据应用场景就是在时间线上每个时间点都会从多个数据源涌入数据,按照连续时间的多种纬度产生大量数据,并按秒甚至毫秒计算的实时性写入存储. 传统的RDBMS数据库对写入的支持都是按行处理,并建立B树结构的索引,它并不是为了批量高速写入而设计,尤其像多纬度时序数据连续的涌入数据平台,RDBMS的存储引擎必然导致负载.吞吐在写入性能上的极不适应. 因此时序数据的存储设计一般不会考虑传统RDBMS,都会将目光放在以LSM-Tree以及列式的数据结构存储方向. LSM数据模…
目录:1.潜伏者 [map] 2.Hankson的趣味题[数论]3.mayan游戏[dfs] 题目: 1. 潜伏者(spy.pas/c/cpp)[问题描述]R 国和S 国正陷入战火之中,双方都互派间谍,潜入对方内部,伺机行动.历经艰险后,潜伏于S 国的R 国间谍小C 终于摸清了S 国军用密码的编码规则:1. S 国军方内部欲发送的原信息经过加密后在网络上发送,原信息的内容与加密后所的内容均由大写字母‘A’—‘Z’构成(无空格等其他字母).2. S 国对于每个字母规定了对应的“密字”.加密的过程就…