题意 https://vjudge.net/problem/CodeForces-1251E2 一共有 n 个选民,你可以付出 pi 的代价让第 i 个选民为你投票,或者,在为你投票的人数达到 mi 时,他会主动为你投票而不用你付出任何代价。 问得到所有选民投票的最小代价。 思路 考虑贪心,对容易跟风的就跟风,对不容易跟
1.下面程序输出什么?为什么? #include <stdio.h> class Test { int mi; public: Test(int i) { mi = i; } Test() { Test(0); //直接调用了构造函数,会产生一个临时对象;Test(0)这个构造函数对这个临时对象进行初始化后。就被析
1.析构函数 a.c++的类中可以定义一个特殊的清理函数:析构函数。析构函数的功能与构造函数相反。 b.定义: ~ClassName() 1).析构函数没有参数也没有返回值类型声明; 2).析构函数在对象销毁时自动被调用 (因为没有参数,所以析构函数不存在函数重载的问题) #include <stdio.h> class Test
题目传送门(内部题131) 输入格式 第一行三个整数$n$、$m$和$Q$。 接下来$m$行每行三个整数$x$、$y$、$z$($1\leqslant x,y\leqslant n,1\leqslant z\leqslant 1,000,000$),表示有一条连接$x$和$y$长度为$z$的边。 接下来$Q$行每行两个整数$x$、$y$($x\neq y$),表示一组询问。
排序 起泡排序(bubble sort),归并排序(merge sort) 1,起泡排序(bubble sort),大致有三种算法 基本版,全扫描。 提前终止版,如果发现前区里没有发生交换,就说明前区已经有序了,直接终止了。但是有个效率低下的地方,就是右边界hi是每次循环向前移动一个单元 跳跃版,在提前终止版的基础上,解决
算法 在连续线性空间里查找 查找可以分成:有序和无序查找 无序查找 顺序比较 缺点:效率低下 //e为查找的对象,lo和hi是要查找的区间 template <typename T> Rank Vector<T>::find(T const & e, Rank lo, Rank hi){ while(hi != lo && _elem[hi-1] != e){ hi--; } return hi
题解——不正常团伙+国家+序列 体面背景好评 关于ssw02,他炸了 不正常团伙 主要思路 50分做法 开桶暴力,统计即可。 60分做法 主席树加暴力 100分做法 由50分做法可得,莫队离线一下就可以了。(这里顺便借ZYC学长的代码优化了一下ssw02自己的莫队板子) 由60分做法可得,主席树记录上一
13:50:24 2019-09-14 继续把未看完的看完 排序算法 定理:任意$N$个不同元素组成的序列平均具有$N(N-1)/4$个逆序对 定理:任何仅以交换相邻两元素来排序的算法,其平均时间复杂度为$Ω(N^2)$ 这样子 冒泡排序 插入排序 的最坏情况都是 N^2 要使排序算法变高效 得使用间隔元素来交
from hashlib import md5 def new_pwd(pwd): mi_pwd = md5(pwd.encode('utf-8')).hexdigest() return mi_pwd 在放入数据库和对照时候需要,先加密再和数据库的密码对照
https://oj.neu.edu.cn/problem/1501 题意:给你矩阵大小和上面的一些点,要你从左到右从一条主路穿过,并且访问这些点,问最短总路线长度。 思路:一开始对于一个点我只算了一次,其实应该把它当成长度为0的线段,然后所有点可以转化成若干条线段,将所有线段的端点纵坐标扔到数组里,排序取中位数
中国剩余定理 孙子定理是中国古代求解一次同余式组(见同余)的方法。是数论中一个重要定理。又称中国余数定理。 我国古代《孙子算经》的卷下第二十六题,“物不知数”题如下: 有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何? 答曰二十三。 物不知数问题用同余式组
题目大意:给定一个长度为 N 的序列,定义连续区间 [l, r] 为:序列的一段子区间,满足 [l, r] 中的元素从小到大排序后,任意相邻两项的差值不超过1。求一共有多少个连续区间。 题解:单调栈 + 线段树 首先,对于区间计数类问题常规的思路是枚举区间的左端点或右端点,统计以该点为端点的区间个数
给定多张图,求从1到n的最大流 Input 第一行数据组数 后面每一组数据第一行n,m表示顶点数、边数(n<=15,m<=1000) 后面m行给出每条有向边的信息 Output 对每一组数据,输出从1到n的最大流 Sample Input 2 3 2 1 2 1 2 3 1 3 3 1 2 1 2 3 1 1 3 1 Sample Output Case 1: 1 Case 2: 2
1.【题目描述】 我叫王大锤,是一名特工。我刚刚接到任务:在字节跳动大街进行埋伏,抓捕恐怖分子孔连顺。和我一起行动的还有另外两名特工,我提议我们在字节跳动大街的 N 个建筑中选定 3 个埋伏地点。为了相互照应,我们决定相距最远的两名特工间的距离不超过 D。 我特喵是
376. 摆动序列 class Solution(object): def wiggleMaxLength(self, nums): """ :type nums: List[int] :rtype: int """ if len(nums)<2: return len(nums) up,down = 1,1
T1 妹子 70pts 直接比较,若其中一个矩形的较长边大于另一个矩形较长边,较短边大于另一个矩形的较短边,则可以。 100pts 较小的矩形还可以通过旋转放到另一个矩形中,枚举旋转的角度a(0°<a<90°),看是否满足题意。 代码如下: #include<bits/stdc++.h> using namespace std; const d
传送门:https://vjudge.net/problem/UVA-10718 Preview: bitstream:a flow of data in binary form. in bit-wise expression:用位表示。 Her face was a cold blank mask. 她装出一副冰冷冷毫无表情的样子。 perform a bit-wise AND operation. In bit-wise expression, mask i
Description 详见OJ Solution 看了\(0.5h\)的题目,最后才大概明白了题目内容。 大概是求一条链的最小值,但不知道有没有还钱以后边是否还存在。 然后就没打了。 正解是倍增+并查集。 并查集得出\(x\)的祖宗以及深度,便于判断两个点是否在同一棵树以及深度。 由于强制在线,我们更新
原文链接:http://www.cnblogs.com/ACAC/archive/2010/05/24/1743142.html 2007-07-15 15:48 -------------------------------------算法简述----------------------------------------- ST算法O(nlogn)预处理,O(1)的查询指定区间的最值(以最小值为例)
可以发现一定只会填以某个字符为中心的最长回文串,然后用hash+二分/manacher求出以i为中心的最大的长度(即所有可能会填的回文串,共n个),将这些回文串根据左端点排序后贪心选择在当前位置之前最远的结束位置即可 1 #include<bits/stdc++.h> 2 using namespace std; 3 #define N 1000
#接收n个参数,返回最大值和最小值def func(*args): m = args[0] mi = args[0] for el in args: if el > m: m = el if el < mi: mi = el return {"最大值":m, "最小值":mi}print(func(1,2,3,4,5,6,7,8,89,10)) yanse = ["红心", "草花", &quo
Description 详见OJ Solution 看了\(0.5h\)的题目,最后才大概明白了题目内容。 大概是求一条链的最小值,但不知道有没有还钱以后边是否还存在。 然后就没打了。 正解是倍增+并查集。 并查集得出\(x\)的祖宗以及深度,便于判断两个点是否在同一棵树以及深度。 由于强制在线,我们更新的时
341 最优贸易 题意:一张图,由单向边和双向边组成,每个节点有固定的权值,求从1走到n的最大权值之差 (不知道为啥放最短路里,明明一个bfs就可以解决了 存边时除了单向双向边要注意,还要存一张反边图 bfs一遍记录从1到n每个节点到1的最小权值 再bfs一遍跑反边图,记录从n到1每个节点到n的最大权
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=6623 题意:给你一个10^18的数n,要你求n的质因子中的最低次幂是多少,比如 12=2^2 * 3^1;12的质因子中最低次幂为1; 思路:由于有t组数据,(t<=10^5),所以不能暴力去写,可以先将n^(0.2)中的素数打个表出来,如果n除完这些素数还大于1,那剩
题目传送门//res tp hdu 目的 对长度为n的区间,给定q个子区间,求一x,使得区间内所有元素与x的绝对值之和最小。 多测。 n 1e5 q 1e5 ai [1,1e9] (i∈[1,n]); 数据结构 划分树 tip 该划分树维护的cnt并非元素所在区间内,该元素之前进入左子树的元素个数,而是整个区间内,该元素之前进入左子