[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 训练编程的题. 原题中没有除0的数据,所以别担心你的代码是因为除0错了. 多半跟我一样. 也是因为没有+eps 就是比如你要算tot/4的值. 那么要输出tot/4+1e-6 不然会错... 浮点误差... 剩下的.其实很简答的.. 注意有并列第x的情况就好. [代码] #include <bits/stdc++.h> using namespace std; const string subject[4]={"Ch…
Content 自己去看题面去. Solution 算不上很繁琐的一道大模拟. 首先,既然是输出 \(0\) 才退出,那么在此之前程序应当会执行菜单 \(\Rightarrow\) 子操作 \(\Rightarrow\) 菜单 \(\Rightarrow\) 子操作 \(\Rightarrow\dots\) 直到你在菜单里面输入 \(0\).因此我们可以写出这样的主体框架: while(1) { Menu(); int x; read(x); if(!x) break; if(x == 1) A…
题目链接:https://vjudge.net/problem/UVA-12412 题目大意 略. 分析 比较大规模的模拟,注意输入输出,浮点数精度,还有排名相同的输出顺序,还有一些边界情况处理. 代码如下 #include <bits/stdc++.h> using namespace std; #define INIT() ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); #define Rep(i,n) for (int i = 0;…
A Typical Homework(a.k.a Shi Xiong Bang Bang Mang) Hi, I am an undergraduate student in institute of foreign languages. As you know, C programming is a required course in our university, even if his/her major is far from computer science. I don‘t lik…
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 会链表的插入操作的话.这个就不难了. 放置两个哨兵节点. 然后模拟插入一个节点的过程就好. 实时修改光标就好->即下一个插入的位置. [代码] #include <bits/stdc++.h> using namespace std; const int N = 1e5; const int fir = 0, last = N + 10; int nex[N + 100],len,be; char s[N + 100];…
Radio Basics for RFID The following is excerpted from Chapter 3: Radio Basics for UHF RFID from the Book, The RF in RFID: Passive UHF RFID in Practice by Daniel M. Dobkin. Order a copy of The RF in RFID: Passive UHF RFID in Practice before December 3…
关系:Vocabulary vs. collection size Heaps’ law: M = kTbM is the size of the vocabulary, T is the number of tokens in the collec*on Typical values: 30 ≤ k ≤ 100 and b ≍ 0.5σ log M = log K -­ b*log T 关系:Vocabulary中每个term的量 vs. 该term的次序 Zipf’s law: cfi =…
这也是一道例题 给定一个字符串,求至少出现 k 次的最长重复子串,这 k 个子串可以重叠.算法分析:这题的做法和上一题差不多,也是先二分答案,然后将后缀分成若干组.不同的是,这里要判断的是有没有一个组的后缀个数不小于 k.如果有,那么存在k 个相同的子串满足条件,否则不存在.这个做法的时间复杂度为 O(nlogn). 我们可以通过二分子串的长度k来做,这时就将题目变成了是否存在重复次数至少为K次且长度不小k的字符串. 首先我们可以把相邻的所有不小于k的height[]看成一组,这组内有多少个字符…
 CDQ分治部分 CDQ分治是用分治的方法解决一系列类似偏序问题的分治方法,一般可以用KD-tree.树套树或权值线段树代替. 三维偏序,是一种类似LIS的东西,但是LIS的关键字只有两个,数组下标和权值,三维偏序问题的权值有两个,且必须A[I]<A[J]且B[I]<B[j]. 把这个问题放到平面上,就是一个点在另一个点的左下方. 那么如何求? CDQ分治的主要过程是二分整个区间,把左区间看成产生贡献的区间,于是我们在左区间进行操作,在右区间统计答案,用归并排序的方法求解. 对于这道题,我们二…
概要: 在dfs中,如果答案的深度很小但是却很宽,而且bfs还不一定好做的情况下,我们就综合bfs的优点,结合dfs的思想,进行有限制的dfs.在这里A*.IDA*和迭代深搜都是对dfs的优化,因此放到一块小结. A*的概念主意在于估计函数,f(n)=g(n)+h(n),f(n)是估计函数,g(n)是n节点的当前代价,h(n)是n节点的估计代价:而实际中,存在最优的估计函数f'(n)=g'(n)+h'(n),那么显然我们在A*的估计中,h(n)<=h'(n),否则你将搜不到最优解:(g(n)>…