Funny Positive Sequence (思维+前缀)】的更多相关文章

There are n integers a 1,a 2,…,a n-1,a n in the sequence A, the sum of these n integers is larger than zero. There are n integers b 1,b 2,…,b n-1,b n in the sequence B, B is the generating sequence of A and bi = a 1+a 2,+…+a i (1≤i≤n). If the element…
题目链接:Funny Positive Sequence 题意:给出一个数列,如果它的前i(1<=i<=n)项和都是正的,那么这个数列是正的,问这个数列的这n种变换里, A(0): a1,a2,…,an-1,an A(1): a2,a3,…,an,a1 … A(n-2): an-1,an,…,an-3,an-2 A(n-1): an,a1,…,an-2,an-1 有多少是正的数列. 思路:比赛的时候想了很久很久,肯定是要求在一次线性扫描里solve这个两重循环才能解决的问题,最后想到应该是计算…
[JZOJ5280]膜法师题解--思维+前缀和 题目链接 暴 力 过 于…
题意:去除数列中的一个数字,使去除后数列中所有数字的gcd尽可能大. 分析:这个题所谓的Coprime Sequence,就是个例子而已嘛,题目中没有任何语句说明给定的数列所有数字gcd一定为1→_→,队友这样解读题目导致我们队的思路完全想歪了,当时真的脑子发懵,为啥没再读一遍题= = 1.求出一个数列的gcd跟计算顺序没关系. 2.如果求去掉下标为i的数字后整个数列的gcd,直接将该数字前的所有数字的gcd(prefix[i-1])和该数字后所有数字的gcd(suffix[i+1])再求一下g…
D - Handstand Time Limit: 2 sec / Memory Limit: 1024 MB Score : 400400 points Problem Statement NN people are arranged in a row from left to right. You are given a string SS of length NN consisting of 0 and 1, and a positive integer KK. The ii-th per…
题意: 给出n个学生 m类题目 每个人会做s[i]类的题 并且做这个题的能力为r[i]  组成一个竞赛队 要求可以选择一些题目  在竞赛队中 擅长每一个题目的 人数要均等  求max(sigma(r[i])) 思路:贪心思想  每类题目选k个学生 先对每一类学生的能力值排序   如果这k个学生的能力值大于0 就选上 一开始写的是类似扫描的思想  从k从1---max(擅长一类题目的学生) 然后把他们前k个相加 如果擅长其中一类题目的sum<=0或者没有k个学生擅长该类题目就忽略  这样在枚举的时…
题目大意:给出n个数(a1.....an),和一个数k,问有多少个区间的和等于k的幂 (1 ≤ n ≤ 10^5, 1 ≤ |k| ≤ 10, - 10^9 ≤ ai ≤ 10^9) 解题思路:首先,可以从题目得出k的幂最大不能超过n*ai=1e14.然后,我们先求出前缀和sum[1]...sum[n],k的i次幂为power[i].我们要求出一个区间和等于power[i]即sum[r]-sum[l]=power[i],转换一下sum[r]=sum[l]+power[i]. 所以我们只需要从1到…
C. Molly's Chemicals time limit per test 2.5 seconds memory limit per test 512 megabytes input standard input output standard output Molly Hooper has n different kinds of chemicals arranged in a line. Each of the chemicals has an affection value, The…
题目传送门 大致题意: 输入整数n(1<=n<=100000),再输入由n个0或1组成的字符串,求该字符串中满足1和0个数相等的最长子串.子序列. sample input: 801001001 sample output: 4 6 题解: 补充一下子串和子序列的区别:字串必须连续,子序列不必连续. 求01个数相等的最长子序列长度:min(0的个数,1的个数). 下面说求01个数相等的最长子串长度: 可以建一个sum数组求前缀和,因为要使0和1个数相等,所以0可以用-1代替,故当sum[r]-…
题目链接:http://arc077.contest.atcoder.jp/tasks/arc077_c 题解:一道思维题.不容易想到类似区间求和具体看一下代码. #include <iostream> #include <cstring> #include <cstdio> #define inf 0X3f3f3f3f using namespace std; const int M = 1e5 + 10; typedef long long ll; int a[M]…