首页 > TAG信息列表 > maxP

质数

相邻质数距离 https://www.acwing.com/problem/content/198/ #include <cstring> #include <iostream> #include <algorithm> using namespace std; typedef long long LL; const int N = 1000010; int primes[N], cnt; bool st[N]; void init(int n) {

leetcode301 删除无效的括号

思路: dfs+剪枝。 实现: 1 class Solution { 2 public: 3 int maxn=0;//已经找到的最大合法长度 4 void dfs(string&s,int cur,int cnt,string c,vector<string>&res,int maxp){ 5 int l=s.length(); 6 if(cur==l){ 7 if(cnt==0){ 8

预处理+条件的维度减少

思维: 3个人的同时满足条件 通过预处理 (每2个人之间的关系) 来达到后面 操作的 O1 复杂度 》》达到降维 的目的(减少时间复杂度); title: 环岛三人行! time limit: 2s memory limit: 128m description : 舟游两周年啦~Keller决定叫上王浩源和dyp一起去罗德岛游玩! 罗德岛是希腊第

算法进阶--最大似然,赔率,Fuzzywuzzy库,主成分分析,onehot

算法进阶--第一天 故地重游之最大似然估计赌徒之赔率Fuzzywuzzy库-Levenshtein distance主成分分析(PCA)One-hot编码 故地重游之最大似然估计 首先从贝叶斯公式开始: 给定某些样本D,在这些样本中计算某结论A1,A2…An出现的概率,即P(Ai|D),若求maxP(Ai|D),则有以下式子: – 当

【洛谷P5311】成都七中

题目 题目链接:https://www.luogu.com.cn/problem/P5311 给你一棵 \(n\) 个节点的树,每个节点有一种颜色,有 \(m\) 次查询操作。 查询操作给定参数 \(l\ r\ x\),需输出: 将树中编号在 \([l,r]\) 内的所有节点保留,\(x\) 所在连通块中颜色种类数。 每次查询操作独立。 \(n,m\leq 10^5\)。

最长连续递增子序列 (25 分) 给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列。例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4,6,8)

最长连续递增子序列 #include<stdio.h> #define max 100000 typedef struct node { int a[max]; }list; int main() { int n; list p; scanf_s("%d", &n); int i = 0; for (i = 0;i < n;i++) { scanf_s("%d", &p.a[i]); } int max

1094 The Largest Generation (25 分)

家族树问题,本题我用的是队列的方法 坑点如下 1,设置了一个levelnum数组记录每一代人数 2,定义全局变量maxlevel记录有最大人数的代数 3, 整体代码如下 #include<cstdio> #include<algorithm> #include<cmath> #include<queue> #include<vector> using namespace std; int maxp=-

DP——P2300 合并神犇

题目背景 loidc来到了NOI的赛场上,他在那里看到了好多神犇。 题目描述 神犇们现在正排成一排在刷题。每个神犇都有一个能力值p[i]。loidc认为坐在附近的金牌爷能力参差不齐非常难受。于是loidc便想方设法对神犇们进行人道主义合并。 loidc想把神犇的能力值排列成从左到右单调不减

【洛谷P6329】【模板】点分树 | 震波

题目 题目链接:https://www.luogu.com.cn/problem/P6329 在一片土地上有 \(n\) 个城市,通过 \(n-1\) 条无向边互相连接,形成一棵树的结构,相邻两个城市的距离为 \(1\),其中第 \(i\) 个城市的价值为 \(value_i\)。 不幸的是,这片土地常常发生地震,并且随着时代的发展,城市的价值也往往会发

洛谷 P3806 【模板】点分治1

传送门 #include <bits/stdc++.h> using namespace std; using ll = long long; using p = pair<int, int>; const int maxn(1e4 + 10); const int maxm(1e2 + 10); const int maxk(2e7 + 10); int ecnt, head[maxn]; int que[maxm], ans[maxn]; int rt, tot, root[

「Codeforces 715E」Digit Tree

Description 程序员 ZS 有一棵树,它可以表示为 \(n\) 个顶点的无向连通图,顶点编号从 \(0\) 到 \(n-1\),它们之间有 \(n-1\) 条边。每条边上都有一个非零的数字。 一天,程序员 ZS 无聊,他决定研究一下这棵树的一些特性。他选择了一个十进制正整数 \(M\),\(\gcd(M,10)=1\)。 对于一对有序

BZOJ-4242 水壶

题目大意 某市是一个被分成$Htimes W$块区域的长方形,每个区域都是建筑物、原野、墙壁之一。建筑物的区域有$P$个,编号为$1dots P$。只有建筑物和原野能够进入,而且每次只能走到相邻的区域中,且不能移动到市外。现在需要在各个建筑物之间往返。在原野上每走过一个区域都需要$1$单位的

[SCOI2010] 股票交易(单调队列优化DP)

链接:[SCOI2010] 股票交易 题意 最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。 通过一段时间的观察,lxhgww预测到了未来TTT天内某只股票的走势,第iii天的股票买入价为每股APiAP_iAPi​,第iii天的股票卖出价为每股BPiBP_iBPi​(数据保证对于

JZOJ6341. 【NOIP2019模拟2019.9.4】C

Description 1<=N,Q,0<=ai<=323232323 Solution 考虑倍增。 设f[i][j]表示从i往上跳2^j^步,从i到fa[i][j]的路径上所有点不包括fa[i][j],a[x]|dis(x,i)的和。 考虑合并,从f[i][j-1]转移过来。那么问题在于从fa[i][j-1]应该是从2^j-1^开始. 但是f[fa[i][j-1]][j-1]是从0开始往上的。

[SCOI2010]股票交易

[SCOI2010]股票交易 有t天,第i天的股票买入价格\(AP_i\),数量限制\(AS_i\);卖出价格\(BP_i\),数量限制\(BS_i\)(\(AP_i\geq BP_i\));两次交易之间要相隔w天,所持有股票不能超过maxp,初始无限多的钱,询问可以赚到的最多钱,\(0≤W<T≤2000,1≤MaxP≤2000\)。 解 显然状态中要表现这是第几天,

luogu 4886

点分治好题 统计距离正常点分治统计即可,我们只需考虑何时达到最优 有两种情况: 第一:代价最大的询问两个端点在不同的两个子树中 因为这种情况下,无论根向那个子树移动都会等价地增加到达另一个端点的代价,因此此时总代价已经达到最小 第二:代价最大的询问有多组,且这些点不在同一棵子树

最大后验与最大似然

最大后验与最大似然 P(x|z) = P(z|x)P(x)/P(z) ~ P(z|x)P(x) 贝叶斯法则左侧P(x|z)通常被称为后验概率,右侧P(z|x)称为似然,P(x)称为先验.直接求后验分布是困难的,但是求一个状态最优估计,使得在该状态下后验概率最大化(MAP)则是可行的. xmap = arg maxP(x|z) = arg maxP(z|x)P(x

动态规划

什么是动态规划? 不论是贪婪或者dp等等本质实际上就是为了化繁为简也就是为了降低时间复杂度,而其中贪婪一般是面对npc问题一种近似算法不一定能获取最优解但是完美是优秀的敌人,在时间复杂度为2^N的情况下我们需要的就是降低时间成本为多项式函数。 而dp的理念便是如此,把一个大的复杂

bzoj4485: [Jsoi2015]圈地

思维僵化选手在线被虐 其实应该是不难的,题目明显分成两个集合,要求是不同集合的点不能联通 先假设全选了,然后二分图最小割,相邻两个点直接连墙的费用就可以了 #include<cstdio>#include<iostream>#include<cstring>#include<cstdlib>#include<algorithm>#include<cmath>#define pt(x

bzoj3137: [Baltic2013]tracks

炸一看好像很神仙的样子,其实就是个sb题 万年不见的1A 但是我们可以反过来想,先选一个起点到终点的联通块,然后这联通块后面相当于就能够走了,继续找联通块 然后就能发现直接相邻的脚步相同的边权为0,否则边权为1 直接bfs找最深的层就完事了 #include<cstdio>#include<iostream>#includ