bzoj 4291: [PA2015]Kieszonkowe】的更多相关文章

4291: [PA2015]Kieszonkowe Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/problem.php?id=4291 Description 给定n个数,请从中选出若干个数,使得总和为偶数,请最大化这个总和. Input 第一行包含一个正整数n(1<=n<=1000000). 第二行包含n个正整数a_1,a_2,...,a_n(1<=a_i<=1000).…
Description 给定n个数,请从中选出若干个数,使得总和为偶数,请最大化这个总和.   Input 第一行包含一个正整数n(1<=n<=1000000). 第二行包含n个正整数a_1,a_2,...,a_n(1<=a_i<=1000).   Output 输出一个正整数,即最大的总和,若无解则输出NIESTETY.   Sample Input 5 2 4 3 3 3 Sample Output 12   解题:唔,总和减去最小的奇数   #include<iostr…
[PA2015]Hazard Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 69  Solved: 19[Submit][Status][Discuss] Description 有n个人在轮流玩赌博机,一开始编号为i的人有a[i]元钱.赌博机可以抽象为一个长度为m的仅包含1和-1的序列,若抽到1,那么你将得到1块钱:若抽到-1,你将输掉1块钱.第1局,第1个人会抽到序列中的第1项:第2局,第2个人会抽到序列中的第2项:第3局,第3个人会抽到序列…
Description 给定n个数,请从中选出若干个数,使得总和为偶数,请最大化这个总和.  Input 第一行包含一个正整数n(1<=n<=1000000). 第二行包含n个正整数a_1,a_2,...,a_n(1<=a_i<=1000). Output 输出一个正整数,即最大的总和,若无解则输出NIESTETY. Sample Input 5 2 4 3 3 3 Sample Output 12 HINT Source By Claris Solution 如果总和为偶数,那么…
题目链接 \(Description\) 有一片n亩的土地,要在这上面种草. 在每一亩土地上都种植了一种独一无二的草,其中,第\(i\)亩土地的草每天会长高\(a[i]\)厘米. 一共会进行\(m\)次收割,其中第\(i\)次收割在第\(d[i]\)天,并把所有高度大于等于\(b[i]\)的部分全部割去.求每次收割得到的草的高度总和是多少. /* 无论怎么收割,长得快的草一定是不矮于长得慢的:而询问与下标无关 所以按生长速度排序,某一时刻的高度一定是递增的,这样就可以二分了 注意很多longlo…
Description 对于一个正整数n,定义f(n)为它十进制下每一位数字的平方的和.现在给定三个正整数k,a,b,请求出满足a<=n<=b且k*f(n)=n的n的个数.   Input 第一行包含三个正整数k,a,b(1<=k,a,b<=10^18,a<=b).   Output 输出一个整数,即满足条件的n的个数.   Sample Input 51 5000 10000 Sample Output 3 HINT 满足的3个n分别为7293,7854和7905. 解题:…
从叶子往上先拓扑一下,建立虚拟root,从root开始dfs.注意到每个点的最优取值一定是一个区间(中位数区间),从儿子区间推出父亲区间即可 #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> using namespace std; const int N=500005; int n,m,l[N],r[N],h[N],cnt,q[N],tot,d[N],fa[N…
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem 10983 18765 Y 1036 [ZJOI2008]树的统计Count 5293 13132 Y 1588 [HNOI2002]营业额统计 5056 13607 1001 [BeiJing2006]狼抓兔子 4526 18386 Y 2002 [Hnoi2010]Bounce 弹飞绵羊 43…
题解 \(f(n)\)的取值范围最多\(9^2 * 18\) 直接枚举判断就好 代码 #include <bits/stdc++.h> #define fi first #define se second #define pii pair<int,int> #define pdi pair<db,int> #define mp make_pair #define pb push_back #define enter putchar('\n') #define space…
[题意]给定n棵高度初始为0的草,每天每棵草会长高a[i],m次收割,每次在d[i]天将所有>b[i]的草收割到b[i],求每次收割量.n<=500000. [算法]线段树上二分 [题解]按照生长速度a[]排序后,容易发现数列永远单调. 在线段树上的区间维护以下值: 1.最后一棵草的高度a 2.上次收割日期b 3.总的草高和c 4.总的生长速度和d 5.收割标记D和B 上传的时候注意右区间收割晚于左区间时强制合并. 下传的时候注意标记D和B直接覆盖. 线段树上二分: 1.判断当前区间是否符合(…