백준 온라인 코딩 문제풀이
Baekjoon Online Judge
Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.
www.acmicpc.net
코드 참고
wny0320 (박 상운)
Run code live in your browser. Write and run code in 50+ languages online with Replit, a powerful IDE, compiler, & interpreter.
replit.com
이번은 11021, 11022, 2438, 2439 중 일부만을 다룸
11022
using System;
using System.IO;
using System.Text;
class Program
{
public static void Main(string[] args)
{
int num = int.Parse(Console.ReadLine());
StringBuilder sb = new StringBuilder();
for (int i = 1; i <= num; i++)
{
using (StringReader sr = new StringReader(Console.ReadLine()))
{
var text = sr.ReadLine().Split();
int value = int.Parse(text[0]) + int.Parse(text[1]);
sb.Append("Case #" + i + ": " + int.Parse(text[0]) + " + " + int.Parse(text[1]) + " = " + value + "\n");
}
}
Console.WriteLine(sb);
}
}
15552번 문제에서 출력 형식만 바꾼 문제로 11021번의 변화 내용도 담겨 있어 11022로 다룸
출력 방식이 Case #1 부터 시작이기 때문에 반복문의 매개변수 i의 시작 숫자와 조건을 바꿈
- int i = 0 에서 int i = 1, i < num에서 i <= num
그리고 출력 형식을 +를 통해 맞춰줌
2439
using System;
class Program
{
public static void Main(string[] args)
{
int times = Int32.Parse(Console.ReadLine());
for (int i = 1; i <= times; i++)
{
for (int j = times; j > i; j--)
{
Console.Write(" ");
}
for (int j = 0; j < i; j++)
{
Console.Write("*");
}
Console.Write("\n");
}
}
}
2439 역시 2438의 내용에서 발전한 것으로 왼쪽에서 별을 찍어야 했던 2438과 달리 오른쪽에 붙어찍어야 함
따라서 times에 5를 입력 받았을 때 5개까지의 별이 출력되어야 하며, 첫줄은 4개의 공백과 1개의 별이 출력 되어야 함
그렇기 때문에 j = times로 받은 횟수 times = 5에서 지금 출력하는 줄 수에 따른 공백 출력 반복문을 추가
times가 5라면 처음 반복문에서 i는 1이고 j는 times = 5에서 1보다 클 때 동안 작동하므로 j의 값이 5 4 3 2일 동안 작동함
즉 빈칸이 4번 출력되게 되며 아래 반복문에서는 j = 0으로 j가 i = 1보다 작을 동안이므로 0 에서만 작동하여 *이 한 번 출력됨
그리고 한줄의 출력이 끝나면 줄을 바꿔주어야 하기 때문에 Console.Write("\n")을 사용하였음
'BaekJoon[C#]' 카테고리의 다른 글
1차원 배열 2562 (0) | 2022.09.23 |
---|---|
반복문 1110 (0) | 2022.09.20 |
반복문 15552 (0) | 2022.09.18 |
반복문 10950 (0) | 2022.09.17 |
조건문 2480 (0) | 2022.09.16 |