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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

一道笔试题

發(fā)布時(shí)間:2024/9/30 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一道笔试题 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在網(wǎng)上看到這樣一道題。題目如下:

同構(gòu)串 時(shí)間限制:C/C++語言 1000MS;其他語言 3000MS 內(nèi)存限制:C/C++語言 65536KB;其他語言 589824KB 題目描述: 給出兩個(gè)字符串a(chǎn)1a2a3...an和b1b2b3...bm,如果存在一種映射ai=f(bi),且如果ai≠bi,f(ai)≠f(bi),我們稱這兩個(gè)字符串同構(gòu)。輸入 輸入第一行包含一個(gè)t,表示數(shù)據(jù)組數(shù),t<=20.對于每組數(shù)據(jù),輸入包含兩行,每一行有一個(gè)字符串。每個(gè)字符串的長度不超過10000,字符串全部由小寫字母組成。輸出 對于每組數(shù)據(jù)輸出一行,如果字符串同構(gòu),輸出“Yes”,不同構(gòu)則輸出“No”。樣例輸入2 abac bcbd aba abc 樣例輸出 Yes No

當(dāng)時(shí)腦子里首先想到的就是python的字典。代碼實(shí)現(xiàn)如下:(python3)

def test1(a, b):if len(a)!=len(b):return Falsec = {i:0 for i in a}for i in range(len(b)):if c[a[i]] == 0:c[a[i]] = b[i]else:if c[a[i]] != b[i]:return Falsereturn True

然后經(jīng)網(wǎng)友提醒還可以通過排序來判斷,代碼如下:

def test2(a, b):if len(a) != len(b):return Falsec = [[a[i], b[i]] for i in range(len(a))]c.sort()for i in range(len(c)-1):if c[i][0] == c[i+1][0] and c[i][1] != c[i+1][1]:return Falsereturn True

這兩種方法經(jīng)測試都可以編譯通過,拿出來與大家共勉,如有不足,不吝賜教。

總結(jié)

以上是生活随笔為你收集整理的一道笔试题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。