• <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

            2010年02月08日星期一.sgu159 && pku2205 dfs

            2010年02月08日星期一.sgu159 && pku2205 dfs
            /*
             * SOUR:sgu159 && pku2205
             * ALGO:dfs... ...
             * DATE: 2010年 02月 07日 星期日 23:16:59 CST
             * COMM:4 dfs
             * 如果P[n]是符合條件的那么必須有P[n-1]是符合條件的。所以可以從0位開始按位在數的前段
             * 添加數,而在搜索的過程中由于P[n-1]是符合條件的所以只需要判斷最高位是否符合條件即可。
             * 不好想啊,我想到了這個符合條件,但是卻還是沒想到還能這么搜
             * */

            本題我的思路就是按位擴展+高精,以下精妙算法完全來自
            http://162.105.81.212/JudgeOnline/showmessage?message_id=93126
             1 
             2 const int N = 2048;
             3 int n,bas,top;
             4 int g[N][N];
             5 int a[N];
             6 
             7 void dfs(int idx,int sum)
             8 {
             9   if (idx == n) {
            10       if (a[idx-1|| n == 1) {
            11           for (int i = 0;i < n;i++) {
            12               g[top][i] = a[i];
            13           }
            14           top++;
            15       }
            16       return ;
            17   }
            18   for (int i = 0;i < bas;i++) {
            19       a[idx] = i;
            20       int tmp = 0;
            21       for (int j = 0;j <= idx;j++) {
            22           tmp += a[j] * a[idx-j];
            23       }
            24       if ((sum + tmp) % bas == i) {
            25           dfs(idx + 1,(sum + tmp) / bas);
            26       }
            27   }
            28 }
            29 
            30 int main()
            31 {
            32   int i,j,k;
            33   scanf("%d%d",&bas,&n);
            34   dfs(0,0);
            35   printf("%d\n",top);
            36   for (i = 0;i < top;i++) {
            37       for (j = n - 1;j >= 0;j--) {
            38           if (g[i][j] >= 10) {
            39               printf("%c",g[i][j] - 10 + 'A');
            40           }else {
            41               printf("%d",g[i][j]);
            42           }
            43       }
            44       printf("\n");
            45   }
            46   return 0;
            47 }
            48 


            posted on 2010-02-08 00:41 schindlerlee 閱讀(927) 評論(0)  編輯 收藏 引用 所屬分類: 解題報告

            久久久久亚洲AV无码专区桃色 | 欧美伊人久久大香线蕉综合69| 国产精品禁18久久久夂久| 国产V亚洲V天堂无码久久久| av无码久久久久不卡免费网站| 久久国产精品成人免费| 久久综合视频网站| 性做久久久久久久| 91精品国产综合久久香蕉| 久久国产精品无| 久久ww精品w免费人成| 久久国产V一级毛多内射| 天天躁日日躁狠狠久久| 国产A级毛片久久久精品毛片| 无码人妻少妇久久中文字幕| 久久精品aⅴ无码中文字字幕不卡 久久精品aⅴ无码中文字字幕重口 | 亚洲性久久久影院| 大伊人青草狠狠久久| 97视频久久久| yellow中文字幕久久网| 无码人妻精品一区二区三区久久久| 97精品国产97久久久久久免费| 97精品依人久久久大香线蕉97| 久久九色综合九色99伊人| 欧美久久综合性欧美| 久久综合给合久久狠狠狠97色69| 久久无码人妻精品一区二区三区 | 久久久久久久久久免免费精品| 亚洲欧洲日产国码无码久久99| 狠狠精品干练久久久无码中文字幕| 色偷偷88888欧美精品久久久| 无码国内精品久久人妻麻豆按摩| 99久久www免费人成精品 | 欧美麻豆久久久久久中文| 久久久精品免费国产四虎| 国产精品美女久久久久久2018| 精品综合久久久久久98| 久久人妻无码中文字幕| 人妻无码久久精品| 亚洲精品第一综合99久久| 一本久久综合亚洲鲁鲁五月天|