zoukankan      html  css  js  c++  java
  • 2017-2018 ACM-ICPC, NEERC, Southern Subregional Contest, qualification stage (Online Mirror, ACM-ICPC Rules, Teams Preferred) C C. Sum of Nestings

    题意:给出n个括号,问是否能让值和为k,一个括号的值为这个括号里面有多少个完整的括号

    思路:我们可以求出最大价值,即(1+2.....+(n-1)),如果他在某个地方不完整的括号,就看他有多少个剩余的,放在那个括号里,例如:

               10   42       (1+2+3+4+5+6+7+8)=36,(((((((())))))))就不能添加第9个括号了,那剩下的6个,我们就可以在倒数第6个那加上括号,那剩下的6个就每个多加一个了,(((((((())()))))))

    http://codeforces.com/contest/847/problem/C

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 typedef long long ll;
     4 const int N=200005;
     5 
     6 
     7 int main(){
     8      ll n,m;
     9      cin>>n>>m;
    10      ll Max=n*(n-1)/2;
    11      if(m>Max){
    12         cout<<"Impossible"<<endl;return 0;
    13      }
    14      ll sum=0,s=1;
    15      int cnt;
    16      for(int i=1;;i++){
    17         if(sum+i>m) {
    18             cnt=m-sum;break;
    19         }
    20         sum+=i;s++;
    21      }
    22 
    23      for(int i=1;i<=s;i++){
    24         printf("(");
    25         if(i==cnt) printf("()");
    26      }
    27      for(int i=1;i<=s;i++)
    28         printf(")");
    29      if(cnt) s++;
    30      for(int i=1;i<=n-s;i++)
    31         printf("()");
    32      cout<<endl;
    33 }
  • 相关阅读:
    ac与ap同步分析
    ipsec原理(转载)
    Sublime Text自定制代码片段(Code Snippets)
    IPsec分析/测试/
    jQuery 学习
    windows pip 安装 转载
    转载 pep8安装
    转载别人的ftp,觉得目录结构不错,学习
    博客园 CSS 代码定制
    AC自动机
  • 原文地址:https://www.cnblogs.com/hhxj/p/7563085.html
Copyright © 2011-2022 走看看