試題 演算法訓練 Anagrams問題 藍橋杯

2021-10-02 15:58:55 字數 1127 閱讀 2647

試題 演算法訓練 anagrams問題

資源限制

時間限制:1.0s 記憶體限制:512.0mb

問題描述

anagrams指的是具有如下特性的兩個單詞:在這兩個單詞當中,每乙個英文本母(不區分大小寫)所出現的次數都是相同的。例如,「unclear」和「nuclear」、「rimon」和「minor」都是anagrams。編寫乙個程式,輸入兩個單詞,然後判斷一下,這兩個單詞是否是anagrams。每乙個單詞的長度不會超過80個字元,而且是大小寫無關的。

輸入格式:輸入有兩行,分別為兩個單詞。

輸出格式:輸出只有乙個字母y或n,分別表示yes和no。

輸入輸出樣例

樣例輸入

unclear

nuclear

樣例輸出

yac**:

#include

#include

#include

#include

#include

#include

using

namespace std;

char a[85]

,b[85];

int cia[30]

,cib[30]

;//代表a~z出現的次數(不區分大小寫)

intmain()

if(a[i]

>=

'a'&&a[i]

<=

'z')

//cout<<"a陣列中的temp值="<}

//cout<<"---------------"(i=0

;i<

strlen

(b);i++)if

(b[i]

>=

'a'&&b[i]

<=

'z')

//cout<<"b陣列中的temp值="<}

int flag=0;

for(i=

0;i<

26;i++)if

(cia[i]

!=cib[i])if

(flag)

cout<<

"n"

cout<<

"y"

}

試題 演算法訓練 Anagrams問題

思路 先將輸入的字串全部轉換成小寫,在比較兩個字串的長度是否一樣以及set 之後的長度是否一樣,否的話返回n,是的話進行迴圈判斷,n1陣列中每個字母出現的次數與n2中的對比,是的話count 1,否的話就跳出迴圈,最後比較count和len set n1 的長度是否相等即可。資源限制 時間限制 1....

試題 演算法訓練 Anagrams問題

問題描述 anagrams指的是具有如下特性的兩個單詞 在這兩個單詞當中,每乙個英文本母 不區分大小寫 所出現的次數都是相同的。例如,unclear 和 nuclear rimon 和 minor 都是anagrams。編寫乙個程式,輸入兩個單詞,然後判斷一下,這兩個單詞是否是anagrams。每乙...

演算法訓練 Anagrams問題

問題描述 anagrams指的是具有如下特性的兩個單詞 在這兩個單詞當中,每乙個英文本母 不區分大小寫 所出現的次數都是相同的。例如,unclear 和 nuclear rimon 和 minor 都是anagrams。編寫乙個程式,輸入兩個單詞,然後判斷一下,這兩個單詞是否是anagrams。每乙...