链接:https://ac.nowcoder.com/acm/contest/992/D $a_{i}=\dfrac {3a_{i-1}-a_{i-2}}{2}+i+1$ 移项再化一下 $a_{i}-a_{i-1}-2i=\dfrac {1}{2}\left[ a_{i-1}-a_{i-2}-2\left( i-1\right) \right]$ 令$t_{i}=t_{i}=a_{i}-a_{i-1}-2i$ 由于$a_{0}=0$ $a_{1}=2$ 所以$t_{1}=0$ 所以$t_{i}=…
题目链接:https://ac.nowcoder.com/acm/contest/992/A 题意:求出长度为n的字符串个数,字符串由A.C.G.T组成,其中A和C必须成对出现. 思路:我们规定:   f[n][0]--长度为n的合法字符串个数 f[n][1]--长度为n的A为奇数个的字符串个数 f[n][2]--长度为n的C为奇数个的字符串个数 f[n][3]--长度为n的A.C均为奇数个的字符串个数 那么有如下转移方程: 根据转移方程构建矩阵: 就可以通过矩阵快速幂求得了,n太大了,继续思考…
题目链接:https://ac.nowcoder.com/acm/contest/992/K 题意:给一个大小为1e5的数组,由0 1组成,有两种操作,包括区间修改,将一段区间内的0换成1,1换成0; 区间查询,查询区间内连续1的数量. 思路:区间查询和区间修改,明显可以用线段树来做,我们先分析下复杂度,每次操作复杂度为logn,有m次操作(m<=1e5+1),那么总复杂度为mlogn,是可行的. 我们用线段树维护什么呢,因为要求区间最多连续1的个数.那么需要维护区间前缀连续0/1的个数fr[0…
题目链接:https://ac.nowcoder.com/acm/contest/992/J 题意:题意很清晰,就是求任意两点距离的和,结果对1e9+7取模. 思路:裸的树形DP题,一条边的贡献值=这条边的权值×左端连接的顶点数×右端连接的顶点数,所以我们dfs算出点y的子树大小siz[y],x为y的父结点,则x与y连线这条边的一端点的个数为siz[y],另一端点的个数为n-siz[y] ,贡献值即为dis[x,y]*siz[y]*(n-siz[y]),注意取模. AC代码: #include<…
链接:https://ac.nowcoder.com/acm/contest/992/I来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format: %lld 题目描述   n个不同的滑稽果中,每个滑稽果可取可不取,从所有方案数中选取一种,求选取的方案中滑稽果个数不超过m的概率.(对109+7取模)输入描述:第一行一个正整数T( T <= 10^5 )随后T行每行两个整数n,m ( 0 < m <= n…
链接:https://ac.nowcoder.com/acm/contest/992/J来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format: %lld 题目描述 红红和蓝蓝是随机降生在苹果树上的苹果仙灵,现在红线仙想估测他们的CP系数,并决定是否使他们成为一对CP. 给出n个结点n-1条边的树,节点编号为1到n,定义distance(i,j)为i与j的树上距离. CP系数是指所有红红和蓝蓝在不同位置i,…
链接:https://ac.nowcoder.com/acm/contest/992/B来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format: %lld 题目描述 在之前很火的一个动漫<干物妹小埋>中,大家对小埋打游戏喝可乐的印象十分的深刻. 现在欧尼酱将小埋的快乐水全部分开藏在了家具的顶端. 小埋使出空中1080°转身接战术翻滚跳到任一家具上,她相信,只要她翻滚的足够快,欧尼酱就跟不上她.   1.为…
题目描述 俄罗斯套娃是俄罗斯特产的木制玩具,一般由多个一样图案的空心木娃娃一个套一个组成,最多可达十多个,通常为圆柱形,底部平坦可以直立.颜色有红色,蓝色,绿色,紫色等.最普通的图案是一个穿着俄罗斯民族服装的姑娘,叫做“玛特罗什卡”,这也成为这种娃娃的通称. 彩虹岛也有自己的套娃,不过与俄罗斯套娃有所不同,其组成规则如下:1. 空心木娃娃只有正方体与球两种形状.2. 正方体娃娃与球体娃娃可以相互套,也可以相同形状之间套.3. 当两形状相切的时候使能够互相嵌套的,比如半径为2的球体能套在边长为4的…
链接:https://www.nowcoder.com/acm/contest/89/A 来源:牛客网 1.题目描述 The Great Wall story of Meng Jiangnv’s Bitter Weeping happened during the Qin Dynasty (221BC- 206BC). Meng jiangnv was a beauty in the Qin Dynasty, and she lived happily with her husband. At…
题目描述:There are n cities in Byteland, and the ith city has a value ai. The cost of building a bidirectional road between two cities is the sum of their values. Please  calculate the minimum cost of connecting these cities, which means any two cities c…
链接:https://www.nowcoder.com/acm/contest/125/A来源:牛客网 Tony and Macle are good friends. One day they joined a birthday party together. Fortunately, they got the opportunity to have dinner with the princess, but only one person had the chance. So they de…
题目链接:https://ac.nowcoder.com/acm/contest/992/F 题意:给定正n边形,边长为100,以每条边的中点连线构成新的正n边形,无限循环下去,求所有边的长度和. 思路:简单数学计算题,可以发现每往下进行一层,边长减小cos(PI/n)倍,在n趋于无穷求等比数列和即可. AC代码: #include<cstdio> #include<cmath> using namespace std; ); int n; int main(){ while(~s…
Problem Description Keke is currently studying engineering drawing courses, and the teacher has taught her how to find its volume through the three views of the part. But her brain doesn't work well that she can't find the volume of complex parts. So…
今天水了一发hdu上的中山校赛 这个题交了将近十遍才过...... 就是说给 n 个木棍,如果能找出3个能组成三角形的木棍就输出yes 反之输出no 乍一看很简单 一个排序遍历一遍就好了 但是n值太大了,我试了一下,就算不加sort都会TLE...... 问了一下大神才想出这个关键的条件: 假设 a1=1,a2=2,a3=3 那么这是最小的三个不能组成三角形的木棍, 所以如果n=4,那么a4最小是a2+a3=5 n=5,a5最小是8 ................ 当n=47时,a47=480…
链接 1.括号序列贪心/CF&51nod原题 [分析]: 贪心,每次到i的时候,假如你要在i里面要卖掉股票,获益是a[i], 肯定要在前面要么:1)把已经卖了的变成不买不卖,需要-a[j], 2)把已经不买不卖的变成买,需要-a[j] [原题链接]:CF&E CF&D 51nod高卖低买 3.构造/封闭运算/费马小定理下模意义/重新定义+和 * [题意]: 输入:素数p 要求构造规则a[p*p],使其满足:(m+n)^p=m^p+n^p a的含义: a[i][j] = (i-1)…
Problem: A Time limit: 1s    Mem limit: 64 MB    AC/Submission: 0/0    Discuss Back   Ranklist  Status  Pending: NaN天 NaN时 NaN分 NaN秒 Problem DescriptionA famous ACMer named LIST.He is very rich,so he has infinite coins of some par value(面值).One day h…
A.偷吃糖果Time Limit: 1000Ms Memory Limit: 65536KB Description小鱼喜欢吃糖果.他有两盒糖果,两盒糖果分别仅由小写字母组成的字符串s和字符串t构成.其中'a'到'z'表示具体的某种糖果类别.他原本打算送给他喜欢的女生,但是要送给女孩子的话两盒糖果不能有差别(即字符串s和t完全相同).所以,他决定偷吃几块,他吃糖果的策略是每次选出一盒糖果中两个连续的同种类别的糖果,然后吃掉其中一块.该策略可以使用多次.例如一盒糖果是'rrrjj',他可以把这盒糖…
Problem A: 回文 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 1719  Solved: 528 Description 小王想知道一个字符串是否为ABA’型字符串.ABA’型字符串的定义:S=ABA’,A,B,A’都是原字符串的子串(不能是空串),A’的意思是A的反转串,B不一定要和A或A’不同.符合ABA’型的例如:"aba”,"acbbca”,"abcefgcba”等."Abcefgcba”是ABA…
链接:https://ac.nowcoder.com/acm/contest/635/H来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 艾兰岛和沃夫岛的时间算法很不一样,它们都拥有它们自己的魔法大时钟.以我们的时间来看艾兰岛的大时钟起鸣在b, b+a, b+2a, b+3a,… ,(a,b均为正整数)并且沃夫岛的大时钟起鸣在d, d+c, d+2c, d+3c,….(c,d…
题目地址 题目大意:给你一个n*m的矩形,在这个矩形内告诉你p个矩形(左下角和右上角坐标),问你q个问题,每次也是给你一个矩形(左下角和右上角坐标),问你每个矩形是否可以被开始给的p个矩形完全覆盖. 思路:n*m范围是1e7,无法开二维数组,二维坐标可以转化为(n-1)*m+m,用一维数组来记录每个坐标的前缀和(即为这个点与0,0点组成矩形的面积),先通过二维差分,将前缀和记录一边.因为有覆盖的情况,所以将前缀和大于0的初始化为1,在来一遍前缀和,处理好之后就可以O(1)的时间算出每个矩形是否可…
题意: n项工作 1~n  工时s[i] ~e[i], 工时有覆盖的工作不能被同一台机器同时操作, 问完成所有工作的最少机器数 思路:前缀差分和 e.g. a            2 3 4              machine 2 b         1 2 3                 machine1 c                     5 6 7     machine2    a做完后空闲做c d               3 4 5 6 7     machin…
沙僧 思路: dfs序+差分数组 分层考虑,通过dfs序来查找修改的区间段,然后用差分数组修改 代码: #include<bits/stdc++.h> using namespace std; #define fi first #define se second #define pi acos(-1.0) #define LL long long #define mp make_pair #define pb push_back #define ls rt<<1, l, m #de…
https://www.nowcoder.com/acm/contest/127/L L 小小粉刷匠 题目描述 "lalala,我是一个快乐的粉刷匠",小名一边快活地唱着歌,一边开心地刷着墙",兴致突然被打断,"小名,你今天如果刷不完这一栋楼的墙,那么你就等着被炒鱿鱼吧",老板声嘶力竭的吼着.苦恼的小名因为不想被炒鱿鱼,所以希望尽量快地刷完墙,由于他本人的数学基础很差,他现在请你来帮助他计算最少完成每一堵墙需要刷多少次.每一面墙有n个段,对于每个段指定一个…
链接:https://ac.nowcoder.com/acm/contest/635/D来源:牛客网 D.绕圈游戏 433为了帮ddd提升智商,决定陪他van特殊的游戏.433给定一个带有n个点的环,游戏从1号点开始,433选择任意一个K值(1<=K<=n),意味着ddd可以每次前进K个单位,当ddd再次到达1号点时游戏结束.智商为负数的ddd并不觉得这有什么难度,这时433一脸坏笑的告诉ddd,游戏的真正目的是:有任意K,满足1<=K<=n,求从开始到结束的所有情况的点数和.例如…
A: Solved. 分别处理出每个%7后余数的数字个数,再组合一下 #include <bits/stdc++.h> using namespace std; #define ll long long int n, m; ll cnt[][]; ll calc(ll x, ll y) { >= y) + ; ; } int main() { while (scanf("%d%d", &n, &m) != EOF) { memset(cnt, , si…
[链接]:A [题意]:给你n个数的序列和k.判断是否可以三个数组成k(同一个数可以拿多次) [分析]:每个数vis记录一下.2层循环.两数之和不超过k以及剩下的数出现在序列中那么ok. [代码]: #include <bits/stdc++.h> #define ll long long #define pb push_back #define inf 0x3f3f3f3f #define pll pair<ll,ll> #define rep(i,a,b) for(int i=…
链接:https://www.nowcoder.com/acm/contest/122/I来源:牛客网 题目描述 小q最近在做一个项目,其中涉及到了一个计时器的使用,但是笨笨的小q却犯难了,他想请你帮助他完成这一部分的代码实现. 输入描述: 多组输入他将给你两个整数 begin 和 end ,代表时间的开始和结束(秒为单位)(0<=begin<end<=10^18) 输出描述: 请你输出时间流逝了多少在一行中输出流逝的时间. 以hh:mm:ss 两位数字的格式输出(小时若不足两位以两位输…