본문 바로가기
반응형

개발/문제풀이20

문제풀이)프로그래머스)단어 변환 단어 변환 URL : https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr begin (시작 단어)에서 target (찾는 단어)까지의 하나의 char를 변경해가면서 가장 최단으로 찾는 문제이다. 처음의 문제를 잘 파악하는게 중요한것 같다. 처음에는 단순히 순서대로 비교해서 테스크 케이스는 통과했는데 알고보니 경우의수를 다 계산해서 가장 최단을 찾아야하는 문제였다. BFS를 기반으로 문제 해결하니 금방 해결했다. IsMatch 를 통해서 단어의 차이.. 2022. 7. 29.
문제풀이)프로그래머스)주차 요금 주차 요금 URL : https://school.programmers.co.kr/learn/courses/30/lessons/92341# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr records 를 기반으로 주차한 기록을 CarNumber를 기반으로 RecordInfo 를 생성하고 오름차순정렬 GetTotalTime 를 통해서 in / out 의 기록을 기반으로 총 시간을 구함 해당 구한 시간을 기준으로 GetTotalPrice 에서 문제에서 요구하는 return 값을 처리 ※GetTotalTime에서 계산하는 과정에서 records가 순서대로(in .. 2022. 7. 26.
문제풀이)프로그래머스)음양 더하기 음양 더하기 URL : https://school.programmers.co.kr/learn/courses/30/lessons/76501 absolutes값을 signs의 부호로 매칭해서 결과값을 처리하는 단순한 문제 ★☆☆☆☆ 2022. 7. 20.
문제풀이)프로그래머스) 로또의 최고 순위와 최저 순위 로또의 최고 순위와 최저 순위 URL : https://school.programmers.co.kr/learn/courses/30/lessons/77484 Sort 을 진행하고 0인 숫자는 (min일경우에는 오답, max일경우에는 정답) 처리 그외 나머지 숫자에대해서는 정답리스트(win_nums)에 포함하는지 확인 정답인 횟수를 기준으로 등수에 대한 계산처리(GetRank) 결과값 (max, min)의 등수 리턴 ★☆☆☆☆ 2022. 7. 19.
문제풀이)프로그래머스)2022 KAKAO BLIND RECRUITMENT -신고 결과 받기 2022 KAKAO BLIND RECRUITMENT -신고 결과 받기 URL : https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 신고를 k 번 받은 유저에 대해서는 신고처리를 진행한다. report 는 "신고한 유저 신고당한유저" 에 대한 데이터이다. id_list는 유저의 전체 리스트 이고 answer의 순서와 동일하다. ReportInfo Class에 유저를 고유한 key로 report의 리스트를 중복처리해서 insert .. 2022. 7. 19.
문제풀이)프로그래머스)c#) 삼각 달팽이 삼각 달팽이 삼각형을 그리면서 달팽이를 순차적으로 만드는 문제로 진행 방향을 회전시켜서 만드는 문제이다. 처음에는 삼각형 모양의 데이터를 만드는데 집중했는데 실제 결과 데이터만 잘 만들면 된다. 중복 반복문을 통해서 진행 방향을 회전 시킨다. 처음에는 ↓(0,+1)으로 최대치까지 진행 이후에 →(+1,0) 방향, 그리고 ↖(-1,-1)으로 회전을 진행한다. n번만큼 회전을 하게 되면 끝난다. 순차적으로 value를 증가시키고 이후에 데이터가 존재하는 List를 리턴하는 것으로 진행한다. URL : programmers.co.kr/learn/courses/30/lessons/68645#qna 코딩테스트 연습 - 삼각 달팽이 5 [1,2,12,3,13,11,4,14,15,10,5,6,7,8,9] 6 [1,2.. 2021. 2. 13.
문제풀이)프로그래머스)c#)계산기 계산기 사칙연산 계산을 하는 문제이다. 출력 예시는 다음과 같다. 입력 : 2 +3 = 출력 :5 입력 : 5*3*2 = 출력 : 30 입력 : 8/2-4*5 = 출력 : -16 사칙연산의 우선순위에 대한 로직이 포함되어있어야 한다. ( 곱하기 / 나누기 ) 우리가 일반적으로 쓰는 중위 표기법 ( 연산기호가 숫자의 중간)을 후위 표기법으로 진행해서 처리한다.( 연산기호가 숫자의 마지막) 후위 표기법으로 위의 출력 예시를 변경하면 다음과 같다. 변경 : 2 3 + 변경 : 5 3 * 2* 변경 : 8 2 / 4 5 * - 원본의 중위표현을 사칙연산의 우선순위에 따라 괄호로 표현하고 후위 표현 이후에 계산하는 방식으로 작업을 진행했다. private string changeBracket(string _val.. 2021. 2. 1.
문제풀이)프로그래머스)c#) 여행경로 여행경로 URL : programmers.co.kr/learn/courses/30/lessons/43164 코딩테스트 연습 - 여행경로 [[ICN, SFO], [ICN, ATL], [SFO, ATL], [ATL, ICN], [ATL,SFO]] [ICN, ATL, ICN, SFO, ATL, SFO] programmers.co.kr DFS를 사용한 구조로 작업 진행했다. 하다가 여러 번 문제가 생겨서 고쳤는데 이유는 다음과 같다. 1. 주어진항공권을 모두 사용해야 한다 (실제로는 모든 경로를 다 우회하는 것이 아닌 가장 길게 갈 수 있는 경로를 만들어야 한다.) 2. 재귀하는 과정에서 무한 루프( ex : A -> B ->B -> A) using System; using System.Collections.G.. 2020. 12. 23.
문제풀이)프로그래머스)c#) 가장 큰 수 가장 큰 수 URL : https://programmers.co.kr/learn/courses/30/lessons/42746# 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 �� programmers.co.kr 문제는 심플하다 주어진 numbers를 결합해서 가장 큰 수를 만드는 값을 return 하는 문제이다. 처음 짠 소스는 다음과 같다. using System; using System.Collections.Generic; public class Info{ public i.. 2020. 9. 7.
문제풀이)프로그래머스)c#) 단어퍼즐 단어퍼즐 URL : https://programmers.co.kr/learn/courses/30/lessons/12983?language=csharp 코딩테스트 연습 - 단어 퍼즐 단어 퍼즐은 주어진 단어 조각들을 이용해서 주어진 문장을 완성하는 퍼즐입니다. 이때, 주어진 각 단어 조각들은 각각 무한개씩 있다고 가정합니다. 예를 들어 주어진 단어 조각이 [“ba”, “na programmers.co.kr 단어를 조합해서 결괏값을 만드는 과정에서 가장 최소한으로 만들 수 있는 개수를 리턴하는 문제로 단어는 무한정 중복 사용이 가능하다. 직접 짠 코드로는 테스트는 다 통과했지만. 효율면에서는 많이 떨어지는 상황이 발생했다. ㅠㅠ 시간 초과는 덤. 맨 처음 생각한 것은 중복 관련돼서 처리하는 과정에서 resu.. 2020. 8. 31.
문제풀이)프로그래머스)c#) 소수찾기 소수찾기 URL : https://programmers.co.kr/learn/courses/30/lessons/42839 코딩테스트 연습 - 소수 찾기 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 � programmers.co.kr 숫자를 조합해서 소수를 찾는 간단한 문제이다. 그러나 막상 경우에 수에 관련된 값을 찾는 과정이 꽤나 걸린다. 1. 주어진 string을 분해해서 트리형 구조로 만들어서 경우에 수를 만든다. 2. 경우에 수에 대한 값을 기준으로 약수에 대한 판별을 해야 한다. 첫 번째 약수 판별할 값을 만드는 과정에서 조금 애먹었다. 조금 .. 2020. 8. 30.
문제풀이)프로그래머스)c#) 카펫 카펫 URL : https://programmers.co.kr/learn/courses/30/lessons/42842 코딩테스트 연습 - 카펫 Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과 �� programmers.co.kr Brown의 블럭이 Yellow의 블럭을 감싸고 있는 형태의 데이터로 만들어야 하는 문제이다. 이 문제를 잘 활용하면 벽을 생성할 수 있을 듯 한 문제로 핵심은 Brown 블럭 + Yellow 블럭의 합을 가지고 약수를 구한다. 이때 가로가 세로보다 커다란 조건으로 인해서 약수를 구하는 과정을 1~ total 값이 아닌 절반까지만 반복해.. 2020. 8. 27.
문제풀이)프로그래머스)c#) 모의고사 모의고사 URL : https://programmers.co.kr/learn/courses/30/lessons/42840 코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 �� programmers.co.kr 수포자가 찍는 방식에 대한 연속된 패턴 데이터를 순서대로 처리하면 되는 문제이다. 완전 탐색으로 문제(answers)의 데이터만큼 반복해서 정답인지 확인하고 정답의 가장 높은 사람의 인덱스를 리턴해주면 되는 문제이다. using System; using System.Collections.Generic; using System.Linq; .. 2020. 8. 27.
문제풀이)프로그래머스)c#) N으로 표현 N으로 표현 URL : https://programmers.co.kr/learn/courses/30/lessons/42895 코딩테스트 연습 - N으로 표현 programmers.co.kr N으로 숫자를 표현을 해서 사칙연산으로 최소한의 값을 만드는 문제이다. N 이 예시로 5인경우 5, 55,555, 5555,55555 등으로도 표현이 가능하다. 사칙연산의 계산 수식에 N이 최소한으로 표현되면서 number(조건)과 같은 최소한의 N의 개수를 리턴하는 문제이다. DP(Dynamic Programming)과 재귀(Recursion)를 통해서 문제를 해결하는 방식으로 구현을 했으나 역시 테스트 케이스를 정확하게 찾지 못하는 경우가 꽤나 많아서. 완벽하게는 풀지는 못했다. 다른 사람의 풀이 코드는 다음과 같.. 2020. 8. 27.
문제풀이) 프로그래머스)C#) 다리를 지나는 트럭 다리를 지나는 트럭 URL :https://programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 길이�� programmers.co.kr 이 코드는 다른 풀이 방식을 참고한 코드로 실제 내가 풀었던 코드는 실패가 난 상황이다. 그런데. 케이스를 찾지를 못한 상황이 생겨서 검색하게 된 코드이다. public int solution(int bridge_length, int weight, int[] truck_weights) { Queue bridge =.. 2020. 8. 21.
반응형