日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

程序员面试金典 - 面试题 08.14. 布尔运算(区间动态规划)

發布時間:2024/7/5 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 程序员面试金典 - 面试题 08.14. 布尔运算(区间动态规划) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. 題目

給定一個布爾表達式和一個期望的布爾結果 result,布爾表達式由 0 (false)、1 (true)、& (AND)、 | (OR) 和 ^ (XOR) 符號組成。
實現一個函數,算出有幾種可使該表達式得出 result 值的括號方法。

示例 1: 輸入: s = "1^0|0|1", result = 0 輸出: 2 解釋: 兩種可能的括號方法是 1^(0|(0|1)) 1^((0|0)|1)示例 2: 輸入: s = "0&0&0&1^1|0", result = 1 輸出: 10提示: 運算符的數量不超過 19

來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/boolean-evaluation-lcci
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。

2. 區間DP解題

  • dp?[i][j] 表示 區間[i,j]內運算值為 ?(0 or 1) 的方案數
  • 初始化,每個數字處dp?[i][i]=1, if s[i]==?
  • 然后按長度len遞增,求解dp[i][i+len]
  • dp[i][i+len]的求解可以根據其內部左右兩側的方案乘積得出
  • 所以分成兩部分dp[i,j],dp[j+2][i+len],遍歷所有的j,j+1處為運算符
  • 然后根據運算符的三種可能,討論0,1的結果,累加即可
class Solution { public:int countEval(string s, int result) {if(s=="")return 0;int i, j, n = s.size(), len;vector<vector<int>> dp0(n,vector<int>(n,0));vector<vector<int>> dp1(n,vector<int>(n,0));//dp?[i][j] 表示 區間[i,j]內運算值為 ? 的方案數for(i = 0; i < n; i+=2){if(s[i]=='1')dp1[i][i] = 1;elsedp0[i][i] = 1;}for(len = 2; len <= n-1; len += 2){ //按長度遞增for(i = 0; i < n-len; i += 2){ //左端點ifor(j = i; j <= i+len-2; j+=2){ //中間端點jif(s[j+1]=='&'){dp1[i][i+len] += dp1[i][j]*dp1[j+2][i+len];dp0[i][i+len] += dp0[i][j]*dp0[j+2][i+len]+dp1[i][j]*dp0[j+2][i+len]+dp0[i][j]*dp1[j+2][i+len];}else if(s[j+1]=='|'){dp1[i][i+len] += dp1[i][j]*dp1[j+2][i+len]+dp1[i][j]*dp0[j+2][i+len]+dp0[i][j]*dp1[j+2][i+len];dp0[i][i+len] += dp0[i][j]*dp0[j+2][i+len];}else//^{dp1[i][i+len] += dp1[i][j]*dp0[j+2][i+len]+dp0[i][j]*dp1[j+2][i+len];dp0[i][i+len] += dp0[i][j]*dp0[j+2][i+len]+dp1[i][j]*dp1[j+2][i+len];}}}}if(result)return dp1[0][n-1];return dp0[0][n-1];} };

8 ms 7 MB

總結

以上是生活随笔為你收集整理的程序员面试金典 - 面试题 08.14. 布尔运算(区间动态规划)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91精品国产自产精品男人的天堂 | 色婷婷狠狠爱 | 浪潮av色 | 小泽玛利亚一区二区三区在线观看 | 亚洲精品美女视频 | 性感美女视频一二三 | 91禁在线看 | 差差差30分钟 | 青娱乐av在线 | 久久精品国产99久久久 | 天天操天天添 | 成人做爰69片免费 | 在线免费观看国产 | 亚洲成人第一区 | 极品国产91在线网站 | 日日燥夜夜燥 | 超碰caopor | 天天色综合天天 | 国产黄色视 | 国产成人亚洲欧洲在线 | 香蕉视频网站在线观看 | 国产一区二区在线精品 | 玉势 (1v1 高h)| 日韩av网站在线观看 | 就操网 | 亚洲第一成肉网 | 亚洲一区激情 | 香蕉久久av | 青青av在线 | 久久麻豆视频 | 中国一级免费毛片 | 91视频综合 | 久久99热这里只有精品 | 中文字幕一区二区三区精品 | 97精品国产97久久久久久春色 | 欧美日韩免费视频 | 欧美videos另类极品 | 少妇太爽了太深了太硬了 | 亚洲人吸女人奶水 | a天堂中文在线观看 | av手机版| 两性午夜视频 | 亚洲欧美在线观看视频 | 亚洲欧洲综合在线 | 自拍偷拍第一页 | av成人在线网站 | 无毛av| 日本少妇色| 成人久久久久 | 天天摸天天舔天天操 | 欧美日韩欧美 | 久久国产露脸精品国产 | 亚洲妇女av | 成人av激情| 免费日本特黄 | 日韩精品一区二区免费视频 | 成人拍拍视频 | 国产三级av在线播放 | 我和岳m愉情xxxⅹ视频 | 亚洲一区二区久久 | 韩国伦理大片 | 国产20页| 亚洲天堂资源网 | 亚洲欧美日韩一区二区三区在线观看 | 一级免费看 | 亚洲成人aaa | 国产精视频 | 亚洲va久久久噜噜噜久久天堂 | 日本黄色录相 | 国产一区精品在线观看 | av国产免费| 亚洲一区天堂 | 日日涩| 国产美女无遮挡免费视频 | av在线网站观看 | av网站在线观看不卡 | 男人与雌性宠物交啪啪 | 玩偶游戏在线观看免费 | 色综合天天综合网国产成人网 | 综合av| 激情内射亚洲一区二区三区爱妻 | 久久久精品电影 | 国产免费观看久久黄av片 | 91在线最新 | 国产黄色片免费在线观看 | 在线免费三级 | 精品人妻一区二区三区视频 | 含羞草一区二区三区 | 久久av高潮av | 欧美欧美欧美欧美 | 国产做爰xxxⅹ久久久精华液 | 伊人国产在线视频 | 嫩草午夜少妇在线影视 | 少妇全黄性生交片 | jizz久久 | 一进一出好爽视频 | 国产天天骚| av永久 | 黄色片不卡 |