題目:輸入一些單詞,找出所有滿足如下條件的單詞:該單詞不能通過字母重排,得到輸入文字中的另外乙個單詞。在判斷是否滿足條件時,字母不分大小寫,但在輸出時應保留輸入中的大小寫,按字典序進行排列(所有的大寫字母在所有的小寫字母的前面)
輸入樣例:ladder came tape soon leader acme ride lone dreis peat
scale orb eye rides dealer note derail laces dried
noel dire disk mace rob dries
輸出樣例:
disk
note
derail
dried
eyeladder
soon
#include
#include
#include
#include
#include
#include
using
namespace std;
mapint> cnt;
vector words;
string repr
(const string &s)
intmain()
vector ans;
for(
int i =
0; i < words.
size()
; i++)if
(cnt[
repr
(words[i])]
==1) ans.
push_back
(words[i]);
sort
(ans.
begin()
, ans.
end())
;for
(int i =
0; i < ans.
size()
; i++
) cout << ans[i]
<< endl;
system
("pause");
return0;
}
關於cctype中標頭檔案的函式的作用
isalnum() 如果引數是字母數字,即字母或數字,該函式返回true
isalpha() 如果引數是字母,該函式返回真
isblank() 如果引數是空格或水平製表符,該函式返回true
iscntrl() 如果引數是控制字元,該函式返回true
isdigit() 如果引數是數字(0~9),該函式返回true
isgraph() 如果引數是除空格之外的列印字元,該函式返回true
islower() 如果引數是小寫字母,該函式返回true
isprint() 如果引數是列印字元(包括空格),該函式返回true
ispunct() 如果引數是標點符號,該函式返回true
isspace() 如果引數是標準空白字元,如空格、進紙、換行符、回車
水平製表符或者垂直製表符,該函式返回true
isupper() 如果引數是大寫字母,該函式返回true
isxdigit() 如果引數是十六進製制的數字,即0~9、af、af,該函式返回true
tolower() 如果引數是大寫字元,則返回其小寫,否則返回該引數
toupper() 如果引數是小寫字母,則返回其大寫,否則返回該引數
關於map中的一些的用法
begin() 返回指向map頭部的迭代器
clear() 刪除所有元素
count() 返回指定元素出現的次數
empty() 如果map為空則返回true
end() 返回指向map末尾的迭代器
equal_range() 返回特殊條目的迭代器對
erase() 刪除乙個元素
find() 查詢乙個元素
get_allocator() 返回map的配置器
insert() 插入元素
key_comp() 返回比較元素key的函式
lower_bound() 返回鍵值》=給定元素的第乙個位置
max_size() 返回可以容納的最大元素個數
rbegin() 返回乙個指向map尾部的逆向迭代器
rend() 返回乙個指向map頭部的逆向迭代器
size() 返回map中元素的個數
swap() 交換兩個map
upper_bound() 返回鍵值》給定元素的第乙個位置
value_comp() 返回比較元素value的函式
其中該題中的作用時是使用了tolower()函式
關於algorithm標頭檔案的作用:提供了sort()函式對字母進行排序。
題中map的count函式是找到map中是否存在在字串r如果存在則返回1,否則返回0
該題演算法是每次把s放入到words中,把排好序的單詞r放入到cnt的鍵string中如果cnt中存在r字串則直接cnt[r]自增一次。如果cnt[r]不存在則給他賦值為0並自增一次,一直迴圈到輸入「#」
用for迴圈找到cnt中string 鍵中的標準化的單詞的個數,如果標準化的單詞為1 即就是輸入欄位中輸入的單詞中字母字元不一樣,這樣就不能通過重排的到另外的乙個輸入的單詞。將判斷後原單詞放入ans中,將其排序輸出。
Map的應用(反片語,UVA156)
5.map的應用 使用count 返回的是被查詢元素的個數。如果有,返回1 否則,返回0。注意,map中不存在相同元素,所以返回值只能是1或0。使用find,返回的是被查詢元素的位置,沒有則返回map.end 解題思路 每輸入乙個單詞先存入vector,歸一化並排序後對應map的值 全部處理完後再從...
反片語 uva 156(map的使用
反片語 輸入一些單詞 以 為結束標誌 找出所有滿足如下條件的單詞 該單詞不能通過字母的重排,得到輸入文字中的另乙個單詞。在判斷是否滿足條件是不分大小寫,但是在輸出時應保留輸入時的大小寫,按字典序進行排列 所有大寫字母在所有小寫字母前面 ladder came tape soon leader acm...
關於「關聯」函式的只言片語
關聯函式的結果需要請求結束後才能獲得,所以提取關聯結果的值必須在請求後,而關聯函式必須在請求前。由於我們在訪問請求前設定規則,伺服器返回的動態內容都會被關聯函式捕捉並且儲存到引數中,這樣就實現了對動態資料的捕獲,通過後期處理過程,即可完成對於動態物件的操作功能。關聯步驟流程圖 簡單的說,關聯就是對伺...