본문 바로가기
728x90

c#102

[ BOJ/C# ] 10773 제로 https://www.acmicpc.net/problem/10773 10773번: 제로 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경 www.acmicpc.net 최근의 수를 지운다는 점에서, stack을 사용하면 될 것 같았다. 역대급으로 빨리 푼 문제같다! using System; namespace B10773 { class Program { static void Main() { StreamReader sr = new StreamReader(Console.OpenStandardInput()); StreamWriter s.. 2023. 9. 7.
[ BOJ/C# ] 1874 스택 수열 https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 문제의 이해와 풀이과정에서 많이 헷갈렸다. 그래서 주석으로 한 단계씩 최대한 풀어가며 설명해두었다. [Stack에는 1부터 오름차순으로 정수를 넣는다. ] 풀이 과정 1. 주어진 정수를 마지막 정수가 올 때까지 반복한다. 2. Stack의 최댓값(혹은 가장 뒤의 값)_Stack.Max 혹은 Stack.Peek 상관없.. 2023. 9. 5.
[ BOJ/C# ] 2164 카드2 https://www.acmicpc.net/problem/2164 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net Queue를 사용하면 쉽게 풀 수 있는 문제였다. using System; namespace B2164 { class Program { static void Main() { StreamReader sr = new StreamReader(Console.OpenStandardInput()); StreamWriter sw = new StreamWriter(Console.OpenStandardOutput.. 2023. 9. 5.
[ BOJ/C# ] 1920 수 찾기 https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들 www.acmicpc.net list.Contains로 list에 포함되었는지 찾아준다. using System; using System.Text; namespace B1920 { class Program { static void Main() { StreamReader sr = new StreamReader(Console.OpenStandardInput()); StreamWri.. 2023. 9. 3.
[ BOJ/C# ] 1676 팩토리얼 0의 개수 https://www.acmicpc.net/problem/1676 1676번: 팩토리얼 0의 개수 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. www.acmicpc.net N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하려면, 결국 10이 되는 숫자인 2와 5가 중요하다. 따라서 2와 5중 최솟값이 0의 개수가 된다. using System; using System.Runtime.Intrinsics.Arm; namespace _1676 { class Program { static void Main() { StreamReader sr = new StreamReader(Console.OpenStandardInput()); Strea.. 2023. 9. 3.
[ BOJ/C# ] 1546 평균 https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net 새로운 평균을 구하는 문제이다. 오차가 소수 2번째 자리 이하를 허용하기 때문에 float로만 구해도 충분하다. 간단하게 배열의 최댓값과 평균을 구하여 새로운 평균을 구해주었다. using System; namespace _1546 { class Program { static void Main() { StreamReader sr = new StreamReader(Console.OpenStan.. 2023. 9. 1.
728x90