<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      挑戰(zhàn)程序設(shè)計(jì)競賽 2章習(xí)題 POJ 3187 Backward Digit Sums DFS

      地址 https://vjudge.net/problem/POJ-3187

      題意是給你一個(gè)N(1<=N<=10)
      
      要求將1到N的數(shù)字進(jìn)行排列 然后進(jìn)行楊輝三角運(yùn)算
      
      每行的數(shù)字等于上一行相同坐標(biāo)和上一行相同坐標(biāo)右邊的兩個(gè)數(shù)字之和
      
      最后得到唯一的一個(gè)數(shù)字
      
      現(xiàn)在給予N 和一個(gè)M
      
      請問初始的N個(gè)數(shù)字該如何排列才能得到這個(gè)M
      輸入
      n m
      n為數(shù)字個(gè)數(shù) m為要求的最后的楊輝三角的和

      輸出
      一行數(shù)字使用空格隔開
      為初始的N個(gè)數(shù)字的排列 如果有多個(gè)答案 輸出字典序最小的一個(gè)
      樣例
      Sample Input
      4 16
      Sample Output
      3 1 2 4  (3 2 1 4 也是答案 但是它不是字典序最小的排列)

       

      解答

      首先按照字典序DFS排列 N個(gè)數(shù)字,然后得到該排列最后的楊輝三角的頂端的數(shù)字 與輸入的m比對,尋找答案

      也可以使用楊輝三角的公式直接計(jì)算出最后的和 與m進(jìn)行比較,這里采取的是暴力模擬計(jì)算楊輝三角的頂端數(shù)字

      #include <iostream>
      
      using namespace std;
      /*
      Sample Input
      4 16
      Sample Output
      3 1 2 4
      */
      
      const int N = 15;
      
      int arr[N];
      int used[N];
      int n, m;
      
      int check[N][N];
      
      //暴力模擬楊輝三角的記錄
      bool CheckArr() {
          for (int i = 0; i < n; i++) {
              check[0][i] = arr[i];
          }
      
          for (int i = 1; i < n; i++) {
              for (int j = 0; j < n - i; j++) {
                  check[i][j] = check[i - 1][j] + check[i - 1][j + 1];
              }
          }
      
          if (check[n - 1][0] == m) return true;
          return false;
      }
      
      bool dfs(int idx)
      {
          if (idx >= n) {
              if (CheckArr() == true) {
                  for (int i = 0; i < n; i++) {
                      cout << arr[i] << " ";
                  }
                  cout << endl;
                  return true;
              }
              return false;
          }
      
          for (int i = 1; i <= n; i++) {
              if (used[i] == 0) {
                  used[i] = 1; arr[idx] = i;
                  if (true == dfs(idx + 1)) return true;
                  used[i] = 0;
              }
          }
          return false;
      }
      
      
      int main()
      {
          cin >> n >> m;
          dfs(0);
          return 0;
      }

       

      posted on 2021-01-25 19:39  itdef  閱讀(78)  評論(0)    收藏  舉報(bào)

      導(dǎo)航

      主站蜘蛛池模板: 日韩精品一区二区三区激| 中文无码热在线视频| 超清无码一区二区三区| A级毛片100部免费看| 国产精品SM捆绑调教视频| 久久天天躁狠狠躁夜夜躁2020| 中文字幕无码不卡在线| 色吊丝一区二区中文字幕| 免费a级毛片无码av| 国产一区二区亚洲精品| 亚洲成在人网站av天堂| 国产一卡2卡三卡4卡免费网站| 国产一区二区在线影院| 免费网站看av片| 香港日本三级亚洲三级| 久热久精久品这里在线观看| 亚洲av无码精品蜜桃| 日韩亚av无码一区二区三区| 色8久久人人97超碰香蕉987| 亚洲欧美中文日韩V在线观看| av鲁丝一区鲁丝二区鲁丝三区 | 亚洲色大成成人网站久久| 亚洲 中文 欧美 日韩 在线| 天干天干夜天干天天爽| 国产日韩精品秘 入口| 国产成AV人片久青草影院| 国偷自产一区二区免费视频| 极品无码国模国产在线观看| 国产av无码专区亚洲av软件| 东阿县| 97视频精品全国免费观看| 亚洲欧美综合人成在线| 国产萌白酱喷水视频在线观看| 精品久久久久久国产| 国产午夜精品久久精品电影| 老熟妇国产一区二区三区| 一本一道av无码中文字幕麻豆| 99久久激情国产精品| 亚洲精品自拍在线视频| 国产精品一区二区久久岳| 欧美人与zoxxxx另类|