摘要: pair 定义:pair<变量类型1,变量类型2>a(1-值,2-值)。 a = make_pair(1-值,2-值); 访问:1-a.first 2-a.second 比较:a < b -> ( a.first < b.first || a.first == b.first && a.second 阅读全文
posted @ 2025-11-25 19:14 一方见地 阅读(2) 评论(0) 推荐(0)
  2025年11月23日
摘要: 1.用法:便于查找。 要查询的关键字 -> 便于查找的函数 (建立一一对应的关系) 大集合 -> 小集合 (例:存放 %p 同余数,0~p-1数组下标 -> 建立链表%p = 数组下标 通过链表存。 点击查看代码 const int modnum = 11; vector<int> HashTabl 阅读全文
posted @ 2025-11-23 20:04 一方见地 阅读(5) 评论(0) 推荐(1)
  2025年10月26日
摘要: 操作:1、插入一个数x 2、查询x再所有数中的排名 平衡树分别有以下几种: splay(应用范围广,本质上:二叉排序数) sbt treap AVL 替罪羊 遍历时用中序遍历(左->中->右) 用splay使abs(h(左子树)-h(右子树))<=1; Splay Tree使用树的旋转操作,同时保证 阅读全文
posted @ 2025-10-26 21:14 一方见地 阅读(10) 评论(0) 推荐(1)
  2025年10月24日
摘要: A. Cut the Array 将数组分段,每段和 % 3 得数 s 要么都相同,要么都不同,就说明这个数组可分。 s 所有可能的结果: 0 , 1 , 2 。 数组可分的组合: (0 * 3)%3 == 0 (1 * 3)%3 == 0 (2 * 3)%3 == 0 (0 + 1 + 2)%3 阅读全文
posted @ 2025-10-24 21:49 一方见地 阅读(5) 评论(0) 推荐(0)
  2025年10月8日
摘要: E. Rasta Thamaye Dilo 要从村庄i走到任意村庄j(i,j属于2,3,... ,n),就要把2~n的村庄连在一起。如果i%j=0或j%i=0,那这两个村庄本来就是连接在一起的。 那么我们要计算的就是有几个没在一起的村庄群,连起来需要的最小边数即为答案。 那么什么情况下村庄没在一起呢 阅读全文
posted @ 2025-10-08 18:51 一方见地 阅读(13) 评论(0) 推荐(0)