cf C. Find Maximum】的更多相关文章

B. Maximum Sum of Digits time limit per test 2 seconds memory limit per test 512 megabytes input standard input output standard output You are given a positive integer nn. Let S(x)S(x) be sum of digits in base 10 representation of xx, for example, S(…
#include<stdio.h> #include<string.h> #include<algorithm> using namespace std; ]; ]; ]; ]; int main() { int i,n; while(scanf("%d",&n)!=EOF) { memset(tmp,,sizeof(tmp)); memset(x,,sizeof(x)); memset(dp,,sizeof(dp)); memset(c,,…
http://codeforces.com/contest/353/problem/C 先预处理前i个数的和,然后找到第一个出现的1,然后变成0后的和与目前的和比较,如果大就更新. #include <cstdio> #include <cstring> #include <algorithm> #define maxn 100010 using namespace std; int n; int a[maxn]; int sum[maxn]; char str[max…
---题面--- 题解: 感觉还是比较妙的,复杂度看上去很高(其实也很高),但是因为n只有100,所以还是可以过的. 考虑一个很暴力的状态f[i][j][x][y]表示考虑取区间i ~ j的方格,左右端点颜色分别是x, y.的最大值. 那么有如下转移 1,直接继承子区间的答案 f[i][j][x][y] = max(f[i][k][x][y], f[k + 1][j][x][y]);//因为子区间就这2种,毕竟子区间一定比当前区间小,因此不靠在端点上的区间一定已经被靠在端点上的区间给取过max了…
题意 给定一颗树,求这个树的最大子树,且这个子树是一个good-tree. good-tree的定义是:每个节点可以表示成一个数值区间,而树上的边表示两个点表示的数值区间相交. 题解 通过分析可以发现,这个子树是这个树的一条链,然后允许这条链上的点带上直接连接的点. 然后就转化为树上求最长链的DP问题. // #pragma GCC optimize(2) // #pragma GCC optimize(3) // #pragma GCC optimize(4) #include <bits/s…
Problem - D - Codeforces Example input 5 4 1 2 -1 2 3 1 1 -2 5 2 0 -2 2 -1 3 -2 -1 -1 3 -1 -2 -2 output 0 2 3 0 2 0 0 1 1 0 最近赛中敲不出代码, 赛后倒是镇静了, 我也醉了 简述下思路及变量意义: 这里采取从前到尾遍历,由于数据范围不能完全连乘2e5个的2, 所以我们采取计数方法, num表示绝对值为2的个数, sign表示当前是正负数, min是从上一个0到现在连乘绝对值…
B. Maximum Submatrix 2 time limit per test 2 seconds memory limit per test 512 megabytes input standard input output standard output You are given a matrix consisting of digits zero and one, its size is n × m. You are allowed to rearrange its rows. W…
A. Little Pony and Expected Maximum time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Twilight Sparkle was playing Ludo with her friends Rainbow Dash, Apple Jack and Flutter Shy. But she kept…
C. Little Girl and Maximum Sum time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output The little girl loves the problems on array queries very much. One day she came across a rather well-known proble…
http://codeforces.com/contest/376/problem/D 题意:给你一个矩阵,可以随意排列n行的次序,然后找出全部含有1的子矩阵.输出1的个数. 思路:c[i][j]表示在i列第j行的格子的右边连续的1的个数.对于每一列,排序c[i],然后比较c[i][j]*(n-j+1)与max1的大小,max1就是答案. #include <cstdio> #include <iostream> #include <cstring> #include…