문제
You are given two strings word1 and word2. Merge the strings by adding letters in alternating order, starting with word1. If a string is longer than the other, append the additional letters onto the end of the merged string.
Return the merged string.
예시
Example 1:
Input: word1 = "abc", word2 = "pqr"
Output: "apbqcr"
Explanation: The merged string will be merged as so:
word1: a b c
word2: p q r
merged: a p b q c r
Example 2:
Input: word1 = "ab", word2 = "pqrs"
Output: "apbqrs"
Explanation: Notice that as word2 is longer, "rs" is appended to the end.
word1: a b
word2: p q r s
merged: a p b q r s
Example 3:
Input: word1 = "abcd", word2 = "pq"
Output: "apbqcd"
Explanation: Notice that as word1 is longer, "cd" is appended to the end.
word1: a b c d
word2: p q
merged: a p b q c d
제약 조건
Constraints:
- 1 <= word1.length, word2.length <= 100
- word1 and word2 consist of lowercase English letters.
해결 과정
- word1와 word2 중 더 긴 길이를 length 변수에 할당한다.
- 반환할 str 문자열을 초기화한다.
- length 만큼 for문을 돈다
- word1부터 값이 들어가야 하기 때문에 if문으로 word1, word2의 값을 넣어준다.
- 만약 undefined라면 값이 존재하는 문자열만 넣어준다.
- 순회가 끝나면 str 문자열을 반환한다.
해결 코드
/**
* @param {string} word1
* @param {string} word2
* @return {string}
*/
var mergeAlternately = function(word1, word2) {
let length = Math.max(word1.length, word2.length);
let str = "";
for (let i = 0; i < length ; i++) {
if (word1[i] != undefined) {
str += word1[i];
}
if (word2[i] != undefined) {
str += word2[i];
}
}
return str;
};
'leetCode' 카테고리의 다른 글
[Easy] 1309. Decrypt String from Alphabet to Integer Mapping (0) | 2022.06.02 |
---|---|
[Easy] 709. To Lower Case (0) | 2022.06.02 |
[Easy] 1672. Richest Customer Wealth (0) | 2022.05.31 |
[Easy] 589. N-ary Tree Preorder Traversal (0) | 2022.05.31 |
[Easy] 496. Next Greater Element I (0) | 2022.05.31 |
Comment