码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode 383 Ransom Note

时间:2016-10-26 13:35:07      阅读:206      评论:0      收藏:0      [点我收藏+]

标签: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 };

LeetCode 383 Ransom Note

标签:char   nbsp   letters   span   ash   code   strong   包含   blog   

原文地址:http://www.cnblogs.com/VickyWang/p/5998925.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!