摘要:前言的字符串的最大公因子對于字符串和,只有在與自身連接次或多次時,我們才認(rèn)定能除盡。返回字符串,要求滿足能除盡且能除盡。
前言
Weekly Contest 139的 字符串的最大公因子:
解題思路對于字符串 S 和 T,只有在 S = T + ... + T(T 與自身連接 1 次或多次)時,我們才認(rèn)定 “T 能除盡 S”。
返回字符串 X,要求滿足 X 能除盡 str1 且 X 能除盡 str2。
示例1:
輸入:str1 = "ABCABC", str2 = "ABC" 輸出:"ABC"示例2:
輸入:str1 = "ABABAB", str2 = "ABAB" 輸出:"AB"示例3:
輸入:str1 = "LEET", str2 = "CODE" 輸出:""提示:
1 <= str1.length <= 1000
1 <= str2.length <= 1000
str1[i] 和 str2[i] 為大寫英文字母
本題需要注意,如果字符串S和T本身不是有特定字符串循環(huán)組成的,那么其實字符串S和T直接也不存在一個最大公因子。我的解題思路是將問題進行分解,分解為以下3步:
提取循環(huán)因子:判斷字符串是否由特定字符循環(huán)組成,并找出所有可以組成字符串的循環(huán)字符串
提取公因子:字符串S和T的循環(huán)因子結(jié)果進行并集計算
提取最大公因子:從公因子集合中找出長度最大的字符串
實現(xiàn)代碼/** * 5076. 字符串的最大公因子 * @param str1 * @param str2 * @return */ public String gcdOfStrings(String str1, String str2) { ListloopStr1=findLoopStrings(str1); List loopStr2=findLoopStrings(str2); List union=new ArrayList<>(); if(!loopStr1.isEmpty() && !loopStr2.isEmpty()){// 不存在循環(huán)因子 for(String l1:loopStr1){// 進行并集運算,提取公因子 for (String l2: loopStr2) { if(l1.equals(l2)){ union.add(l1); } } } if(union.isEmpty()){// 無公因子,直接返回空字符 return ""; } // 找出長度最大的字符串 return union.stream().collect(Collectors.maxBy(Comparator.comparing(String::length))).get(); } return ""; } /** * 獲取組成循環(huán)字符串的子串 * @param str * @return */ private List findLoopStrings(String str){ List result=new ArrayList<>(); for(int i=0;i
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/74746.html
摘要:項目黃皮書一經(jīng)發(fā)布,區(qū)塊鏈垂直媒體星球日報就對這本書作了專題式的解讀。在接受星球日報采訪中,開發(fā)者們表示,擔(dān)心節(jié)點集中化帶來的安全風(fēng)險。本文,星球日報將通過解讀黃皮書,解答開發(fā)者關(guān)心的問題。 showImg(https://segmentfault.com/img/bVbt2EX?w=800&h=534); 由ETM科學(xué)院歷時半年打磨的黃皮書,從科學(xué)和技術(shù)兩方面全方位解讀了ETM的理論...
摘要:項目黃皮書一經(jīng)發(fā)布,區(qū)塊鏈垂直媒體星球日報就對這本書作了專題式的解讀。在接受星球日報采訪中,開發(fā)者們表示,擔(dān)心節(jié)點集中化帶來的安全風(fēng)險。本文,星球日報將通過解讀黃皮書,解答開發(fā)者關(guān)心的問題。 showImg(https://segmentfault.com/img/bVbt2EX?w=800&h=534); 由ETM科學(xué)院歷時半年打磨的黃皮書,從科學(xué)和技術(shù)兩方面全方位解讀了ETM的理論...
摘要:月日,由星球日報主辦的大型線下活動生態(tài)大會在北京隆重舉行。第一個是投票率不高,核心的原因是因為投票者是在等待超級節(jié)點在等待收益利潤,這個鏈除了發(fā)布挖礦收益以外,這兩部分是割裂的。的超級節(jié)點,始終集中在少數(shù)節(jié)點是容易被攻擊的。 7月10日,由星球日報主辦的大型線下活動Staking 生態(tài)大會在北京隆重舉行。作為公鏈3.0項目的代表之一,En-Tan-Mo首席科學(xué)家、創(chuàng)始人Aaron Yu...
摘要:因子是一種構(gòu)建應(yīng)用的方法用聲明式的格式設(shè)置自動化,最小化新開發(fā)者加入項目的時間和成本。代碼庫一份被版本控制追蹤的代碼,多份部署因子應(yīng)用會一直放在版本控制中,如,或者。每個分布式系統(tǒng)中的組件是一個應(yīng)用,每一個都可以獨立遵守因子。 原文地址: https://12factor.net/12factor... 介紹 現(xiàn)在軟件通常交付為一個服務(wù):可以叫web應(yīng)用,或軟件即服務(wù)(SaaS)。1...
閱讀 3527·2023-04-25 14:57
閱讀 2574·2021-11-22 14:56
閱讀 2098·2021-09-29 09:45
閱讀 1779·2021-09-22 15:53
閱讀 3327·2021-08-25 09:41
閱讀 908·2019-08-29 15:22
閱讀 3307·2019-08-29 13:22
閱讀 3132·2019-08-29 13:08