Development/Program Solving
[백준 단계별로 풀어보기] 반복문 with C#
이쥬딩
2023. 7. 10. 14:29
728x90
2739번: 구구단
int number = int.Parse(Console.ReadLine().ToString());
for (var i = 1; i < 10; i++)
{
Console.WriteLine("{0} * {1} = {2}",number, i, number*i);
}
10950번: A+B - 3
using System.Text;
class Program
{
static void Main(string[] args)
{
StringBuilder stringBuilder = new StringBuilder();
int length = int.Parse(Console.ReadLine());
for (int i = 0; i < length; i++)
{
string[] array = Console.ReadLine().Split(" ");
string value = (int.Parse(array[0]) + int.Parse(array[1])).ToString();
stringBuilder.AppendLine(value);
}
Console.WriteLine(stringBuilder);
}
}
StringBuilder
.NET에서 StringBuilder 클래스 사용
.NET에서 StringBuilder 클래스를 사용하는 방법을 알아봅니다. 이 클래스를 사용하면 새 개체를 만들지 않고 문자열을 수정합니다.
learn.microsoft.com
String 개체는 변경할 수 없습니다. System.String 클래스에서 메서드 중 하나를 사용할 때마다 메모리에 새 문자열 개체가 생성되므로, 새 개체에 대한 공간을 새로 할당해야 합니다. 문자열을 반복적으로 수정해야 하는 경우 새로운 String 개체 생성과 관련된 오버헤드로 인해 비용이 증가할 수 있습니다. 새 개체를 만들지 않고 문자열을 수정하려는 경우 System.Text.StringBuilder 클래스를 사용할 수 있습니다. 예를 들어 StringBuilder 클래스를 사용하면 루프에서 많은 문자열을 연결할 때 성능이 향상될 수 있습니다.
8393번: 합
int num = int.Parse(Console.ReadLine());
int sum = 0;
for (var i = 1; i <= num; i++)
{
sum += i;
}
Console.WriteLine(sum);
25304번: 영수증
int total = int.Parse(Console.ReadLine());
int length = int.Parse(Console.ReadLine());
int sum = 0;
for (var i = 0; i < length; i++)
{
string[] array = Console.ReadLine().Split(' ');
int num1 = int.Parse(array[0]);
int num2 = int.Parse(array[1]);
sum += num1 * num2;
}
if (total == sum)
{
Console.WriteLine("Yes");
}
else
{
Console.WriteLine("No");
}
25314번: 코딩은 체육과목입니다
using System.Text;
class Program
{
static void Main(string[] args)
{
int num = int.Parse(Console.ReadLine());
StringBuilder stringBuilder = new StringBuilder();
int length = num / 4;
for (int i = 0; i < length; i++)
{
stringBuilder.Append("long ");
}
stringBuilder.Append("int");
Console.WriteLine(stringBuilder);
}
}
15552번: 빠른 A+B
using System.Text;
class Program
{
static void Main(string[] args)
{
int count = int.Parse(Console.ReadLine());
StringBuilder stringBuilder = new StringBuilder();
for (var i = 0; i < count; i++)
{
string[] array = Console.ReadLine().Split(' ');
int a = int.Parse(array[0]);
int b = int.Parse(array[1]);
stringBuilder.AppendLine((a + b).ToString());
}
Console.WriteLine(stringBuilder);
}}
11021번: A+B - 7
using System.Text;
class Program
{
static void Main(string[] args)
{
int count = int.Parse(Console.ReadLine());
StringBuilder stringBuilder = new StringBuilder();
for (var i = 1; i <= count; i++)
{
string[] array = Console.ReadLine().Split(' ');
int a = int.Parse(array[0]);
int b = int.Parse(array[1]);
stringBuilder.AppendFormat("Case #{0}: {1} \n", i, (a + b).ToString());
}
Console.WriteLine(stringBuilder);
}
}
8393번: A+B -8
using System.Text;
class Program
{
static void Main(string[] args)
{
int count = int.Parse(Console.ReadLine());
StringBuilder stringBuilder = new StringBuilder();
for (var i = 1; i <= count; i++)
{
string[] array = Console.ReadLine().Split(' ');
int a = int.Parse(array[0]);
int b = int.Parse(array[1]);
stringBuilder.AppendFormat("Case #{0}: {1} + {2} = {3} \n", i, a, b, (a + b).ToString());
}
Console.WriteLine(stringBuilder);
}
}
2438번: 별 찍기
int length = int.Parse(Console.ReadLine());
string str = null;
for (var i = 1; i <= length; i++)
{
for (var y = i; y > 0; y--)
{
str += "*";
}
Console.WriteLine(str);
str = null;
}
2439번: 별 찍기 -2
using System.Text;
class Program
{
static void Main(string[] args)
{
int length = int.Parse(Console.ReadLine());
StringBuilder stringBuilder = new StringBuilder();
for (var i = 1; i <= length; i++)
{
int x = length - i;
for (var y = i; y > 0; y--)
{
for (; x > 0; x--)
{
stringBuilder.Append(' ');
}
stringBuilder.Append("*");
}
Console.WriteLine(stringBuilder);
stringBuilder.Clear();
}
}
}
10952번: A+B -5
using System.Text;
class Program
{
static void Main(string[] args)
{
StringBuilder stringBuilder = new StringBuilder();
while (true)
{
string[] array = Console.ReadLine().Split();
int a = int.Parse(array[0]);
int b = int.Parse(array[1]);
if (a == 0 && b == 0)
{
break;
}
stringBuilder.AppendLine((a + b).ToString());
}
Console.WriteLine(stringBuilder);
}
}
10951번: A+B - 4
using System.Text;
class Program
{
static void Main(string[] args)
{
StringBuilder stringBuilder = new StringBuilder();
while (true)
{
string input = Console.ReadLine();
if (input == null)
{
break;
}
string[] array = input.Split();
int a = int.Parse(array[0]);
int b = int.Parse(array[1]);
stringBuilder.AppendLine((a + b).ToString());
}
Console.WriteLine(stringBuilder);
}
}
더 좋은 코드가 있다면 댓글 주시면 감사하겠습니다 :)
728x90