(待补)

A. Pieces of Parentheses

将括号处理完成后排序,方式参加下面的博客。然后做一遍背包即可。

2018 Multi-University Training Contest 1 Balanced Sequence(贪心)

#include <cstdio>
#include <cstring>
#include <algorithm>
#include <iostream> using namespace std;
const int maxn=300+10;
struct Node
{
int l,r,have;
int c;
bool operator<(const Node& rhs)const
{
if(c==0&&rhs.c==0) return ((l-r)>(rhs.l-rhs.r))||((l-r)==(rhs.l-rhs.r)&&l>rhs.l);
else return c>rhs.c;
} } node[maxn];
int n;
char s[maxn];
int f[maxn][100000+10];
int Max;
int main()
{
scanf("%d",&n);
Max=0;
for(int i=1; i<=n; i++)
{
scanf("%s",s);
int len=strlen(s);
int l=0,r=0,res=0;
for(int j=0; j<len; j++)
{
if(s[j]=='(') l++, Max++;
else
{
if(l) l--, res++;
else r++;
}
}
node[i].l=l, node[i].r=r, node[i].have=res*2; if(node[i].l&&node[i].r==0) node[i].c=1;
else if(node[i].l==0&&node[i].r) node[i].c=-1;
else node[i].c=0;
} sort(node+1,node+1+n); memset(f, -1, sizeof(f));
f[1][0]=0; for(int i=1; i<=n; i++)
for(int j=0; j<=Max; j++)
if(f[i][j]!=-1)
{
f[i+1][j]=max(f[i+1][j],f[i][j]);
if(node[i].r<=j)
f[i+1][j+node[i].l-node[i].r]=max(f[i+1][j+node[i].l-node[i].r],f[i][j]+node[i].have+2*node[i].r);
} printf("%d\n",f[n+1][0]);
return 0;
}

  

B. Stars in a Can

C. Stretching Streamers

D. Heaps from Trees

E. Blazing New Trails

可以二分一个值,然后将所有的特殊边减去这个值,看最小生成树满不满足条件。

F. Incremental Double Free Strings

G. Apple Market

H. Maximum Color Clique

I. Ski Resort

J. Yin and Yang Stones

每次操作消去一个 "B" 和 "W",而且这样的消去操作与位置是无关的。所以直接判个数相等。

K. Unbalanced Parentheses

North American Invitational Programming Contest (NAIPC) 2017的更多相关文章

  1. North American Invitational Programming Contest (NAIPC) 2016

    (待补) A. Fancy Antiques 爆搜. B. Alternative Bracket Notation C. Greetings! D. Programming Team 0/1分数规划 ...

  2. The North American Invitational Programming Contest 2017 题目

    NAIPC 2017 Yin and Yang Stones 75.39% 1000ms 262144K   A mysterious circular arrangement of black st ...

  3. The North American Invitational Programming Contest 2018 D. Missing Gnomes

    A family of nn gnomes likes to line up for a group picture. Each gnome can be uniquely identified by ...

  4. The North American Invitational Programming Contest 2018 H. Recovery

    Consider an n \times mn×m matrix of ones and zeros. For example, this 4 \times 44×4: \displaystyle \ ...

  5. The North American Invitational Programming Contest 2018 E. Prefix Free Code

    Consider nn initial strings of lower case letters, where no initial string is a prefix of any other ...

  6. North American Invitational Programming Contest 2018

    A. Cut it Out! 枚举第一刀,那么之后每切一刀都会将原问题划分成两个子问题. 考虑DP,设$f[l][r]$表示$l$点顺时针一直到$r$点还未切割的最小代价,预处理出每条边的代价转移即可 ...

  7. (寒假开黑gym)2017-2018 ACM-ICPC German Collegiate Programming Contest (GCPC 2017)

    layout: post title: (寒假开黑gym)2017-2018 ACM-ICPC German Collegiate Programming Contest (GCPC 2017) au ...

  8. Codeforces Gym101606 A.Alien Sunset (2017 United Kingdom and Ireland Programming Contest (UKIEPC 2017))

    2017 United Kingdom and Ireland Programming Contest (UKIEPC 2017) 寒假第一次组队训练赛,和学长一起训练,题目难度是3颗星,我和猪队友写 ...

  9. Codeforces Gym101572 B.Best Relay Team (2017-2018 ACM-ICPC Nordic Collegiate Programming Contest (NCPC 2017))

    2017-2018 ACM-ICPC Nordic Collegiate Programming Contest (NCPC 2017) 今日份的训练,题目难度4颗星,心态被打崩了,会的算法太少了,知 ...

随机推荐

  1. 'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "XXXView" nib but the view outlet was not set.' 崩溃问题

    先说下我遇到这个崩溃问题的原因: 自定义的Viewxib和系统的 View重名,导致崩溃 我的理解是我这里加载YJLoginViewController 的时候,YJLoginViewControll ...

  2. 【java】Cookie购物车实现

    前言 一个基于Cookie的购物车实现 话不多说,直接上代码 导包 import java.net.URLDecoder; import java.util.ArrayList; import jav ...

  3. JVM虚拟机 - Class类文件结构

    概述 Class文件是一组以8位字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在Class文件之中,中间没有添加任何分隔符,这使得整个Class文件中存储的内容几乎都是程序运行的必要数据 ...

  4. Cocos2d-x v3.1 GUI系统--环境构建(七)

    Cocos2d-x v3.1 GUI系统--环境构建(七) 在使用Cocos2d-x的GUI系统时,由于生成的工程默认是没有将GUI系统所需的库导入到项目的,所以我们必须把库导入到工程中并对工程做一些 ...

  5. font:inherit

    font:inherit 字体的设置 设置所有元素的字体保持一致: 所有元素:*{font:inherit;} /* IE8+ */ body体用percent:body{font:100%/1 sa ...

  6. Python3基础12(collections、struct、itertools、chardet等的使用)

    import struct import base64import itertoolsimport chardet from collections import namedtuple,default ...

  7. 手机端@media screen布局自适应

    @media only screen and (min-width: 310px) and (max-width: 360px) { }@media only screen and (min-widt ...

  8. linux 命令——7 mv(转)

    mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录. 1.命令格式: mv [选项] 源文件或目 ...

  9. 五、react中父子组件间如何传值

    1.父组件向子组件传递数据:父组件绑定属性值传给子组件,子组件通过this.props()接受. 2.子组件向父组件传递数据:子组件绑定一个方法,方法中通过this.props.父组件方法名(参数)传 ...

  10. python_61_装饰器4

    import time def timer(func):#timer(test1) func=test1 def deco(): start_time=time.time() func()#run t ...