标签:char nbsp letters span ash code strong 包含 blog
Problem:
Given? an ?arbitrary? ransom? note? string ?and ?another ?string ?containing ?letters from? all ?the ?magazines,? write ?a ?function ?that ?will ?return ?true ?if ?the ?ransom ? note ?can ?be ?constructed ?from ?the ?magazines ; ?otherwise, ?it ?will ?return ?false. ??
Each ?letter? in? the? magazine ?string ?can? only ?be? used ?once? in? your ?ransom? note.
You may assume that both strings contain only lowercase letters.
canConstruct("a", "b") -> false canConstruct("aa", "ab") -> false canConstruct("aa", "aab") -> true
Summary:
给出两个字符串r,m,判断r串能否由m串组成。即r串中的所有字母包含在m串中即可。
Analysis:
Hash表
1 class Solution { 2 public: 3 bool canConstruct(string ransomNote, string magazine) { 4 int magChar[26] = {0}; 5 int len = magazine.size(); 6 for (int i = 0; i < len; i++) { 7 magChar[magazine[i] - ‘a‘]++; 8 } 9 10 len = ransomNote.size(); 11 for (int i = 0; i < len; i++) { 12 if (--magChar[ransomNote[i] - ‘a‘] < 0) { 13 return false; 14 } 15 } 16 17 return true; 18 } 19 };
标签:char nbsp letters span ash code strong 包含 blog
原文地址:http://www.cnblogs.com/VickyWang/p/5998925.html