백준 등 알고리즘 62

C# 문자 반복 출력 new string(n, m)

https://school.programmers.co.kr/learn/courses/30/lessons/120825  나의 풀이 using System;public class Solution { public string solution(string my_string, int n) { string answer = ""; int a = my_string.Length; int b = 0; for(int i = 0; i  % 나머지 계산으로 3개씩 배열에 담는 방식을 채택하였는데 new string (n, m)을 사용하면 n 문자열을 m개 담을 수 있다. 다른 풀이 using System;public class Solution { public s..

[C#] 프로그래머스 LV 2 주차 요금 계산

https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 설명이 엄청 길지만 주어진 기본요금, 추가요금, 기본시간을 계산해서 차량이 들어오고 나갈때 의 시간을 계산해주면 된다. 그렇다면 차량이 들어왔을 때 주차장 일지에 등록하듯이 dictionary를 통해 차를 넣어주고, 나갈때 최초의 등록이라면 그냥 추가만하고 이전에 등록한 적이 있었다면 더해주면 된다. 그리고 23:59 까지 출차하지 않았다면 그 계산도 따로 더해주면 된다. 전체 코드는 아래로 내리면 있기 때문에 참고하면 된다.  1. 요금 계산..

[C#] 프로그래머스 LV 2 뒤에 있는 큰 수 찾기

https://school.programmers.co.kr/learn/courses/30/lessons/154539  자신 뒤에 있는 수가 자신보다 크다면 해당 숫자를 배열에 담고, 없다면 -1을 담는 문제이다. 해당 문제는 Stack으로 풀었는데, 검사할 수의 위치를 Stack에 담고 다음으로 나오는 수와 비교하여 뒷큰수가 맞다면 뒷큰수를 담고 Stack에서 제거하고, 아니라면 그 다음 수와 비교하기 위해 Stack에 놔두는 식으로 하여 마지막에 stack에 남아있는 수들은 뒷큰수를 못찾은 수들의 위치이기 때문에 차례로 -1을 해주는 방식으로 풀이하였다. using System;using System.Collections.Generic;public class Solution{ public int[..

[C#] 프로그래머스 LV.2 k진수에서 소수 개수 구하기

https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 주어진 수 n을 k진수로 변환한 후, 해당 조건에 맞는지에 따라 count를 세서 return해주는 문제이다. 잘 보면 0이 키워드인데 결국 0으로 해당 수를 나눠줘야 된다는 것이다. 진수변환 진수변환에는 String.ConvertTo(int32, int32); 로 진수를 변환시킬 수 있는데, 해당 문제를 ConverTo로 풀면 invaild Base 오류가 발생한다. 따라서 진수 변환을 직접 함수로 만들어서 계산해주면 된다. 그렇다면 어떤 식..

[C#] 프로그래머스 LV.2 게임 맵 최단거리

https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 최단거리는 BFS를 이용해 해결하면 된다. bool 이차원 배열로 visited를 정해 0,1 1,0 0, -1 -1,0 이 갈수 있는곳있지 검사하면서 탐색해간다. Queue는 BFS에서 당연히 써야 하는 것이며, 왜냐하면 너비 탐색으로 처음 들어간 곳 의 주변을 살펴야 하기 때문에 FIFO인 Queue와 잘 맞는다. using System;using System.Collections.Generic;class Solution { publi..

[C#] 프로그래머스 LV.2 타겟 넘버 (DFS)

https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr DFS문제이다. 재귀를 통해 모든 경우의 수를 탐색해야 하기 때문에 DFS를 통해 문제를 해결하였다. using System;public class Solution{ public int MaxCount = 0; public int solution(int[] numbers, int target) { return DFS(numbers, target, 0, 0); } private int DFS(int[] nu..

[C#] 프로그래머스 Lv.2 프로세스 (Queue 튜플)

https://school.programmers.co.kr/learn/courses/30/lessons/42587?language=csharp 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 요약하자면 프로세스에서 대기중인 큐를 꺼내서 우선순위가 높으면 꺼내고, 아니라면 다시 queue에 집어넣어서 우선순위가 높은 queue부터 하나씩 빼는 문제이다. 주어진 location이 검사하고 싶은 숫자의 위치이고, 해당 숫자가 몇번째로 추출이 되는데 return하는 문제이다. Queue 튜플queue 튜플은 여러 데이터를 하나의 그룹으로 묶어주는 데이터 타입이다. queue가 아니더라도 그냥 여러 데이터를 그룹..

[C#] 프로그래머스 Lv.2 귤 고르기

https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.krusing System;using System.Collections.Generic;using System.Linq;public class Solution{ public int solution(int k, int[] tangerine) { // size 별 개수를 담기 위한 dictionary Dictionary dic = new Dictionary(); foreach (int size in tan..

[C#] 프로그래머스 영어 끝말잇기

https://school.programmers.co.kr/learn/courses/30/lessons/12981 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 사람수 n만큼 영어 끝말잇기를 하는 문제이다. 사람수 n과 단어 배열 words를 받아서 단어를 뱉고, 이를 HashSet에 add하여 중복된 단어를 넣지 않게하고 이미 사용됐는지 체크를 하면 되는 문제이다. player와 round는 player의 경우 i번 반복할 경우 i % n + 1 로 나머지 개수로 사람의 번호를 체크하고, round는 나눗셈으로 하면 된다. using System;using System.Collections.Gener..