namespace ConsoleApp2
{
internal class Program
{
static void Main(string[] args)
{
int N = int.Parse(Console.ReadLine());
for (int i = 0; i < N/4; i++)
{
Console.Write("long ");
}
Console.Write("int");
}
}
}
Console.ReadLine()을 통해 입력을 받고, int.Parse로 정수형으로 변환하여 N 변수에 저장
N이 4의 배수이므로 N / 4을 계산.
계산한 결과에서 1을 빼서 int에 붙여야 할 long의 개수를 결정
int 앞에 필요한 만큼의 long (공백에 유의) 을 붙여 문자열을 완성
StringBuilder 클래스
- 문자열을 효율적으로 생성하고 수정할 수 있는 기능을 제공
- 반복적인 문자열 결합 로직에 있어서 성능 상 효율적
예시)
using System;
using System.Text;
class Program {
static void Main() {
int N = int.Parse(Console.ReadLine());
StringBuilder sb = new StringBuilder();
for (int i = 0; i < N / 4; i++) {
sb.Append("long ");
}
sb.Append("int");
Console.WriteLine(sb.ToString());
}
}
사용자로부터 입력을 받아 N 변수에 저장
StringBuilder 객체 sb를 생성
for 반복문을 사용하여 N / 4 만큼 long 문자열을 sb에 추가
int 문자열을 sb에 추가
sb.ToString()을 호출하여 StringBuilder 객체에 저장된 문자열을 출력
<정리>
N이 매우 큰 경우, 위 방식은 + 연산자를 사용하는 것보다 훨씬 효율적이다.