- 博客(34)
- 收藏
- 关注
原创 Finding Palindromes -- 字典树 & 扩展kmp
题目链接题目大意:给你 n 个字符串,两两串联得到 n×n 个新字符串,问其中有几个是回文串,保证 n 的字符串的总长度不超过 2e6。简要分析:两个字符串 s 和 t ,长度分别是 i 和 j,假设它们可以组成回文串,若 i < j,则 s 是 t 反转的前缀,若 i>= j,则 t 反转是 s 的前缀。也就是说,先把 t 反转,然后与 s 匹配,若 s 先匹配完,则看 t 的剩余部分是否是回文,若 t 先匹配完,则看 s 的剩余部分是否是回文。总结一下:需要判断一个字符串的前缀回文
2020-08-03 09:16:13 248
原创 An Easy Problem?! —— 计算几何思维
题目链接题意: 给你两个木板钉在墙上接雨水,问能接雨水的三角形面积。思路:若线段不相交或共线,则直接输出零,然后计算出有效三角形面积即可。如图所示:只有最左边的摆放方式含有效三角形S_ATF_。代码:#include<iostream>#include<cmath>using namespace std;double eps = 1e-8;int sgn(double x) { if (fabs(x) < eps) return 0; ret
2020-07-10 10:46:00 235
原创 Kadj Squares -- 计算几何思维
题目链接题意:给你几个正方形的边长,把这些正方形按顺序放入直角坐标系的第一象限,其中边长与x、y轴成45度角。可以有重合边,但不能有重合面积。问从 y 轴上方看可以看到那些正方形。思路:先确定每个正方形的左右端点,再判断那些正方形被覆盖。代码:#include<cstdio>#include<vector>#include<cmath>using namespace std;struct node { int l, r, siz;};int
2020-07-09 18:49:53 282
原创 2020HAUT-暑假新生训练1 —— 题解
A题题意: 在二维坐标系内,给你一个起点,再给你一个终点,外加一个按周期循环的干扰因素-风,问你多少天能到达终点。简单说,每天可以移动一个单位,且要风力方向移动一个单位。题解:统计在一个周期内每天因风力移动的距离(分为两个方向)和 可以自由移动的次数,当自由移动的次数不小于风力影响后的位置到终点的距离时即可到达,要求最少天数,二分即可。代码:#include<bits/stdc++.h>using namespace std;const int maxn = 1e6+1;int
2020-07-09 10:55:20 500 1
原创 Codeforces Round #650 (Div. 3) ~~ F2. Flying Sort (Hard Version) (dp)
This is a hard version of the problem. In this version, the given array can contain equal elements and the constraints on n are greater than in the easy version of the problem.You are given an array a of n integers (the given array can contain equal elem.
2020-06-17 23:57:09 337
原创 Triangle ~~ 叉积
题目超链接One day, ABC and DD found a triangular wheat field, and they decide to cut it into two pieces with the same area with a segment. Because of various reasons, one of the endpoints of the division line is fixed at (px,py). Now you are asked to find the
2020-06-16 14:48:26 435
原创 Educational Codeforces Round 89 (Rated for Div. 2)~~E. Two Arrays
You are given two arrays a1,a2,…,an and b1,b2,…,bm. Array b is sorted in ascending order (bi<bi+1 for each i from 1 to m−1).You have to divide the array a into m consecutive subarrays so that, for each i from 1 to m, the minimum on the i-th subarray i.
2020-06-12 16:15:39 405
原创 Educational Codeforces Round 89 (Rated for Div. 2)~~D. Two Divisors
You are given n integers a1,a2,…,anFor each aifind its two divisors d1>1 and d2>1 such that gcd(d1+d2,ai)=1 (where gcd(a,b) is the greatest common divisor of a and b) or say that there is no such pair.InputThe first line contains single integer.
2020-06-12 10:33:20 274
原创 Educational Codeforces Round 89 (Rated for Div. 2)~~A. Shovels and Swords
Polycarp plays a well-known computer game (we won’t mention its name). In this game, he can craft tools of two types — shovels and swords. To craft a shovel, Polycarp spends two sticks and one diamond; to craft a sword, Polycarp spends two diamonds and on.
2020-06-12 10:00:35 482
原创 HDU - 3567~~Eight II
Eight-puzzle, which is also called "Nine grids", comes from an old game. In this game, you are given a 3 by 3 board and 8 tiles. The tiles are numbered from 1 to 8 and each covers a grid. As you see, there is a blank grid which can be represented as an .
2020-06-11 11:31:01 214
原创 ICPC NEAU Programming Contest 2020~~ E. 随便置换
题目描述:输入描述第一行输入一个整数TTT,代表有TTT组测试数据 对于每一组测试数据,第一行输入222个整数n,mn,mn,m,第二行输入一个nnn的排列aia_iai输出描述对于每组测试数据,如果存在满足要求的排列ppp,第一行输出YES,第二行输出nnn个整数pip_ipi如果存在多种可能的排列p,可以输出任意一个如果不存在满足要求的排列p,在唯一的一行中输出NO数据范围1≤T≤10001≤m≤n≤2⋅105∑n≤2⋅105本题答案不唯一,符合要求的答案均正
2020-06-10 17:37:10 446 3
原创 CCPC2019河南省赛~~ 2523 咕咕的计数题 II
题目描述:咕咕最近在学习初等数论,并且对下取整函数产生了极大的兴趣。下取整函数是指一个函数,自变量为 一个实数,因变量为一个整数,这个整数恰好是小于或等于自变量的最大的整数,通常记做 ⌊x⌋。例如, ⌊2.5⌋ = 2,⌊2⌋ = 2,⌊−2.5⌋ = −3。咕咕发现,给定一个 a,并不是所有的自然数 n 都存在一个正整数 i 使得 ⌊n/i⌋ = a。那么,如果给定 l,r,咕咕好奇在区间 [l,r] 中有多少个正整数能使这个等式有正整数解 i 呢?那么,聪明的你,你能告诉咕咕吗?输入第一
2020-06-10 08:19:48 414
原创 ICPC NEAU Programming Contest 2020~~ K. 关键结点
一个含有n个结点m条边的无向有权图,判断每个结点是否在从1到n的最短路径上输入描述第一行输入一个整数TTT,代表有TTT组测试数据 对于每一组测试数据,第一行有2个整数n,m,接下来mmm行每行有333个整数xi,yi,wi,表示x和y之间有一条权值为wi的边输出描述对于每组测试数据,在一行中输出n个整数,第i个整数代表iii号结点的关键性样例输入:26 71 2 12 3 12 4 12 5 23 5 14 5 25 6 14 61 2 11 3 11.
2020-06-09 22:39:07 190
原创 东华大学2020年程序设计竞赛(同步赛)~~B.A Number Theoretical Problem
题目描述Given a positive integer y and a prime p, you are asked to find an integer x such that (x×y) mod p=1. If such x exists, output any x mod p. Otherwise, output -1.Hint: For any integer a and positive integer b, a mod b is the remainder of a dividing b
2020-06-08 15:57:05 305
原创 ICPC NEAU Programming Contest 2020~~ D. 旅游
皮皮准备去旅游,共有n个景点可以选择,景点编号为1~n,每个景点都有一个“美观值”ai。共有m次查询,对于第i次查询,皮皮将从xi号景点开始游览,之后他会选择沿着编号递增的顺序选择游览其他景点,但是如果这个景点的美观值不大于他刚刚游览过的景点,他就会跳过这个景点。也就是说,皮皮在游览一个美观值为u的景点v后,他将游览的下一个景点是编号大于v、美观值大于u的,编号最小的景点。皮皮将一共访问yi个景点,请你输出他最后一个访问的景点编号,如果他不能访问yi个景点,输出-1。输入描述输入第一行一个整.
2020-06-08 07:09:58 278
原创 ICPC NEAU Programming Contest 2020~~M. 再来异或
给你具有n个结点n−1条边的无向无环连通图,结点编号1∼n,每条边上有一个数作为他的边权,定义函数f(i,j)为连接i,j的简单路径的所有边权的异或值。输入描述输入的第一行为一个整数T,代表测试用例的组数接下来的T组测试用例按照如下格式给出:每组数据占n行,第一行有1个整数n,接下来的n−1行,每行有3个整数u,v,w分别表示每条边的起点、终点、权值输出描述对于每组测试数据,在新的一行中输出答案样例输入2121 2 3样例输出03求解公式的大致意思是算出所.
2020-06-07 10:40:45 240
原创 ICPC NEAU Programming Contest 2020~~ H. 排序
给你两个长度均为n的数列ai和bi,定义函数你可以改变ai内各元素的顺序,使g(n)最小,求这个最小值。由于答案很大,请输出答案对109+7取余后的值输入描述输入的第一行为一个整数T,代表测试用例的组数接下来的T组测试用例按照如下格式给出:每组数据占3行,第一行有2个整数n,表示数组长度,第二行有n个整数ai,第三行有n个整数bi输出描述对于每组测试数据,在新的一行中输出答案,由于答案很大,请输出答案对109+7取余后的结果数据范围样例输入127 1777.
2020-06-06 22:59:11 265
原创 ICPC NEAU Programming Contest 2020—— G. 选根
有一颗有n个结点树,结点被编号为1 ~ n,记根结点深度为1,如果第iii个结点的深度是d,则它贡献的价值是d×wi,这棵树的价值是所有结点的价值和 求当根结点为1~n时,树的价值分别为多少输入描述第一行输入一个整数T,代表有T组测试数据 对于每一组测试数据,第一行有1个整数n,第二行有n个整数wi,接下来n−1行每行有两个整数x,y表示x和y之间有一条边输出描述对于每组测试数据,在一行中输出n个整数,第i个整数代表以i结点为根结点时树的价值数据范围1≤T≤10001≤n≤2⋅1
2020-06-06 22:05:39 232
原创 牛客IOI周赛17-普及组——D.数列统计
题目描述求以xxx结尾的长度为lll的不下降正整数数列一共有多少个。对911451407取模输入描述:本题有多组数据第一行一个正整数T,表示数据组数。对于每组数据:两个用空格隔开的整数l,x 输出描述:TTT行,每行一个答案。...
2020-06-06 07:06:12 395
原创 #646 (Div. 2) B题Subsequence Hate
题意: 给你一个二进制字符串s,对s中的某个字符取反算一次操作,求出最小次数使得s不含010或101的子序列。
2020-06-04 16:20:10 250
原创 树状数组的空间解析
线性数组是元素的排列,而树状数组是空间的排列。为什么是空间的排列呢? #### 流程图方向TB 从上到下BT 从下到上RL 从右到左LR 从左到右TD 同TB示例从上到下AB从左到右AB...
2020-05-05 12:30:02 554
原创 水题(water) 斐波那契数列(矩阵快速幂)
题目链接题目描述:其中,f(1)=1;f(2)=1;Z皇后的方案数:即在Z×Z的棋盘上放置Z个皇后,使其互不攻击的方案数。 输入描述:输入数据共一行,两个正整数x,m,意义如“题目描述”。输出描述:一个正整数k,表示输出结尾0 的个数或者放置皇后的方案数输入:375 16输出:14200题中有三个需要解决的问题,x是否属于斐波那契数列,x!在m进制下末尾0...
2020-04-17 13:22:17 175
原创 最短路 稠密图 —— 传递闭包
题目链接题目描述:在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助他们吗?输入描述:输入包括多组数据。每组数据第一行是两个整数N、M(N<=100,M<=10000),N表示成都的大街上有几个路口,标号为1的路口是商店所在...
2020-04-08 08:13:20 448
原创 环球旅行 图论 —— 直径
题目链接题目描述:有n个点由n-1条边连通,若去掉一条边,则图中的直径最小是多少。输入描述:第一行一个正整数n(n<=106),表示点的数量。并将这些点从1到n编号。接下来n-1行,每行三个正整数a,b,w。表示编号为a的点和编号为b的点之间有一条长度为w(w<=1000)的边。输出描述:输入一行一个整数,满足题中要求。为了使去掉一条边后直径最小,我们一定会...
2020-04-07 13:46:05 1641
原创 回到过去 01背包 O(∩_∩)O哈哈~
题目链接题目描述:想回到过去,试着让故事继续~小y一直幻想着回到过去,改变历史。终于,上帝给了他一次改变历史的机会。具体地说,他获得了n个时光胶囊。第i个时光胶囊可以让时光倒流aia_iai天。我们将时光倒流天数相同的时光胶囊视为同一种。小y想恰好回到m天前。而携带过多种类的时光胶囊会浪费太多体力。所以他想知道有哪些种类的时光胶囊是必须携带的。数据保证一定可以选择若干个胶囊能过恰好...
2020-04-06 11:20:14 208
原创 最小相似度 bfs O(∩_∩)O哈哈~
题目链接题目描述:定义两个位数相等的二进制串 A,B 的相似度 SIM(A,B)=二进制串A⊕B中0的个数。如 A=00010,B=01000,A⊕B=01010,所以 SIM(A,B)=3。给定 N 个长度为 M 的二进制串S1,S2…SN。现在的问题是找出一个额外的长度为 M 的二进制字符串 T ,使得 max{SIM(S1,T),SIM(S2,T)…SIM(SN,T)}最小。因...
2020-04-06 08:35:07 278
原创 Bit Compression 两种解决方案 O(∩_∩)O哈哈~
题目链接方法一(暴力):这题很容易看出来是个典型的dfs题,只要注意剪枝(把结果一定为0的情况进行剪枝)就能过,下面是代码:#include<cstdio>using namespace std;bool a[1 << 18];int dfs(int n, bool* s) { if (n == 1) return 1; n >>= 1; bool...
2020-04-05 20:34:44 1235
原创 高精度压位(亿进制)模板
#include<bits/stdc++.h>using namespace std;typedef long long LL;const LL inf=0x3f3f3f3f;class HighPrecision{//高精度压位模板 public: vector<LL>p; bool operator<(HighPrecision b){//重载...
2020-03-31 17:03:04 436
原创 牛客练习赛60 D-斩杀线计算大师
题目描述算术能力是每个炉石玩家必不可少的,假设现在有三种伤害卡,伤害值分别是a,b,ca,b,ca,b,c。并且每种伤害卡的数量你可以认为是无限的。现在牛牛想知道是否存在一种方式可以刚好造成kkk点伤害,输出x,y,zx,y,zx,y,z分别表示三种伤害卡的使用个数。数据保证一定存在解。如果存在多组解,输出任意一组。输入描述:一行四个整数分别表示a, b, c, k.输出描述:...
2020-03-29 15:26:42 302
原创 ~最长递增子序列(LIS)~~~~树状DP
最长递增子序列问题(LIS):给定一个长度为N的数组,找出一个最长的单调递增子序列。例如一个长度为7的序列A={5,6,7,4,2,8,3},它最长的单调递增子序列为{5,6,7,8},长度为4。LIS问题解决方法有很多,树状DP是其中一个高效的方法,要说树状DP还要从基础DP讲起,先引入一个模板题:这里是引用题目:“最少拦截系统”某国有一种导弹拦截系统,这种导弹拦截系统有一个缺陷:虽然...
2020-03-06 21:58:39 669
原创 ~Keywords Search~~~~AC自动机
题意:有多个关键词,在一个文中找到它们。输入:第一行是一个整数N,表示关键词个数,下面有N个关键词,N<=1000。每个关键词只包含小写字母,长度不超过50.最后一行是文本,长度大于1000000。输出:在输出文本中能找到多少关键词。重复的关键词只需要统计一次。AC自动机是KMP的升级版。KMP是单模匹配算法,处理在一个文本串中查找一个模式串的问题;AC自动机是多模匹配算法,能在一...
2020-03-02 10:01:00 355
原创 ~素数数目~~~~区间筛法(埃氏筛法)
题目描述给定区间[L,R],计算区间素数个数。 输入输入两个整数L,R(1<=L<=R<=10^12,R-L<=1000000) 输出输出一行表示区间素数的个数 样例输入 Copy2 11样例输出 Copy5算区间中素数个数的题,一般就是用埃氏筛法(复杂度O(nlogn)),这题自然也不例外,具体思路如下:第一步,用埃氏筛法得到1 ~ R1/2之间...
2020-02-25 22:14:25 1024
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人