• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Why so serious? --[NKU]schindlerlee

            2009年12月25日星期五.sgu179

            2009年12月25日星期五.sgu179
            找一個合法的括號序列的下一個合法next_permutation
            我打了個表,標(biāo)*的為正確的排列。
            我們發(fā)現(xiàn)在()()()()之后的都是非法序列,合法序列只占開始的一小部分。
            然后我就用next_permutation水了一下,就過了
            WindyWinter還介紹了一個找規(guī)律的方法: http://www.briefdream.com/sgu-179/
            http://www.shnenglu.com/schindlerlee/

            /*
            00001111 (((()))) *
            00010111 ((()())) *
            00011011 ((())()) *
            00011101 ((()))() *
            00011110 ((())))(
            00100111 (()(())) *
            00101011 (()()()) *
            00101101 (()())() *
            00101110 (()()))(
            00110011 (())(()) *
            00110101 (())()() *
            00110110 (())())(
            00111001 (()))(()
            00111010 (()))()(
            00111100 (())))((
            01000111 ()((())) *
            01001011 ()(()()) *
            01001101 ()(())() *
            01001110 ()(()))(
            01010011 ()()(()) *
            01010101 ()()()() *
            01010110 ()()())(
            01011001 ()())(()
            01011010 ()())()(
            01011100 ()()))((
            01100011 ())((())
            01100101 ())(()()
            01100110 ())(())(
            01101001 ())()(()
            01101010 ())()()(
            01101100 ())())((
            01110001 ()))((()
            01110010 ()))(()(
            01110100 ()))()((
            01111000 ())))(((
            10000111 )(((()))
            10001011 )((()())
            10001101 )((())()
            10001110 )((()))(
            10010011 )(()(())
            10010101 )(()()()
            10010110 )(()())(
            10011001 )(())(()
            10011010 )(())()(
            10011100 )(()))((
            10100011 )()((())
            10100101 )()(()()
            10100110 )()(())(
            10101001 )()()(()
            10101010 )()()()(
            10101100 )()())((
            10110001 )())((()
            10110010 )())(()(
            10110100 )())()((
            10111000 )()))(((
            11000011 ))(((())
            11000101 ))((()()
            11000110 ))((())(
            11001001 ))(()(()
            11001010 ))(()()(
            11001100 ))(())((
            11010001 ))()((()
            11010010 ))()(()(
            11010100 ))()()((
            11011000 ))())(((
            11100001 )))(((()
            11100010 )))((()(
            11100100 )))(()((
            11101000 )))()(((
            11110000 ))))((((
            */
             1 /*
             2  * SOUR:sgu179
             3  * ALGO:math
             4  * DATE: 2009年 12月 25日 星期五 16:22:44 CST
             5  * COMM:3 http://www.shnenglu.com/schindlerlee/
             6  * */
             7 #include<iostream>
             8 #include<cstdio>
             9 #include<cstdlib>
            10 #include<cstring>
            11 #include<algorithm>
            12 using namespace std;
            13 typedef long long LL;
            14 const int maxint = 0x7fffffff;
            15 const long long max64 = 0x7fffffffffffffffll;
            16 
            17 const int N = 10010;
            18 char s[N], last[N];
            19 int len;
            20 
            21 int judge()
            22     //1 right 0 false -1 exceed
            23 {
            24     int i;
            25     for(i = 0;i < len ;i++) {
            26         if(last[i] > s[i]) {
            27             break;
            28         }else if(last[i] < s[i]) {
            29             return -1;
            30         }
            31     }
            32     int top = 0;
            33     for(int i = 0;i < len;i++) {
            34         if(s[i] == '(') {
            35             top ++;
            36         }else {
            37             if(top > 0)
            38                 top --;
            39             else {
            40                 return 0;
            41             }
            42         }
            43     }
            44     return (top == 0);
            45 }
            46 
            47 int main()
            48 {
            49     int i,j,k;
            50     scanf("%s",s);
            51     len = strlen(s);
            52     for(i = 0;i < len;i++) {
            53         if(i & 1) {
            54             last[i] = ')';
            55         }else {
            56             last[i] = '(';
            57         }
            58     }
            59 
            60     next_permutation(s,s + len);
            61     while(1) {
            62         int r = judge();
            63         if(r == 0) {
            64             next_permutation(s,s + len);
            65         }else if(r == 1) {
            66             for(i = 0;i < len;i++) {
            67                 putchar(s[i]);
            68             }
            69             putchar(10);
            70             break;
            71         }else {
            72             printf("No solution\n");
            73             break;
            74         }
            75     }
            76     return 0;
            77 }
            78 
            79 
            80 


            posted on 2009-12-25 17:15 schindlerlee 閱讀(976) 評論(0)  編輯 收藏 引用 所屬分類: 解題報告

            久久久亚洲AV波多野结衣| 久久精品国产99国产电影网| 精品久久久久久无码中文字幕| 精品精品国产自在久久高清| 99久久精品国产一区二区| 久久夜色精品国产| 2021久久国自产拍精品| 国产视频久久| 日韩人妻无码精品久久免费一 | 99久久综合狠狠综合久久| 国产精品免费久久| 亚洲国产精品无码久久一区二区| 99久久精品国产麻豆| 一级女性全黄久久生活片免费| 97久久超碰国产精品2021| 天天影视色香欲综合久久| 久久精品成人国产午夜| 日产精品久久久一区二区| 久久乐国产精品亚洲综合| 久久99中文字幕久久| 亚洲va久久久噜噜噜久久| 久久精品综合一区二区三区| 99久久精品日本一区二区免费| 久久久精品国产免大香伊| 曰曰摸天天摸人人看久久久| 久久亚洲AV成人无码国产| 国产成人精品综合久久久久 | 久久人人爽人人爽人人AV东京热| 久久精品国产亚洲精品| 999久久久国产精品| 国产69精品久久久久777| 亚洲精品无码久久久影院相关影片 | 精品久久久久久久中文字幕| 久久久久久久尹人综合网亚洲| 久久精品蜜芽亚洲国产AV| 亚洲乱码中文字幕久久孕妇黑人| 伊人色综合久久天天人守人婷| 久久久久人妻一区精品| 天天综合久久一二三区| 国产精品久久久久蜜芽| 久久这里只精品99re66|