작성일 :

문제 링크

26590번 - Word Mix

설명

두 단어가 주어질 때, 짧은 쪽 길이만큼 새 단어를 만드는 문제입니다. 짝수 위치는 첫 단어에서, 홀수 위치는 둘째 단어에서 가져옵니다.


접근법

짧은 길이까지 순회하며 위치가 짝수면 첫 단어의 문자를, 홀수면 둘째 단어의 문자를 붙입니다.



Code

C#

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
using System;
using System.Text;

class Program {
  static void Main() {
    var line = Console.ReadLine()!;
    var parts = line.Split(' ', StringSplitOptions.RemoveEmptyEntries);
    var a = parts[0];
    var b = parts[1];
    var len = Math.Min(a.Length, b.Length);
    var sb = new StringBuilder(len);
    for (var i = 0; i < len; i++)
      sb.Append((i % 2 == 0) ? a[i] : b[i]);
    Console.WriteLine(sb.ToString());
  }
}

C++

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <bits/stdc++.h>
using namespace std;

int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);

  string a, b; cin >> a >> b;
  int len = min(a.size(), b.size());
  string res;
  res.reserve(len);
  for (int i = 0; i < len; i++)
    res += (i % 2 == 0) ? a[i] : b[i];
  cout << res << "\n";

  return 0;
}