목록전체 글 (159)
다희의 코딩 성장일기
[ 문제 ] [백준] 1541. 잃어버린 괄호 (자바 JAVA) 문제 링크 : https://www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net # 접근 방법 및 풀이 그리디 + 문자열 문제다. 처음에 이거보고 바로 아이디어가 안 떠올라서 화가났다. 그리디 문제를 더 풀어봐야할 것 같다. 문제는 적절히 괄호를 쳐서 식의 값을 최소로 만들어야 한다. 최소값이 나오기 위해선 - 기준으로 식을 나누고, +가 있는 식들을 다 계산해서 최종적으로 빼주면 된다. 예제..
[ 문제 ] [백준] 12851_숨바꼭질2 (자바 JAVA) 문제 링크 : https://www.acmicpc.net/problem/12851 12851번: 숨바꼭질 2 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 www.acmicpc.net # 접근 방법 및 풀이 수빈이의 위치에서 동생의 위치로 -1, +1, *2 일 경우로 이동해보면서 가장 빠른 시간으로 동생의 위치에 도착해야하므로 BFS로 풀었다. 숨바꼭질1을 오래전에 풀고, 비슷한 방식으로 최단시간 안에 동생의 위치에 도착하면 카운팅 해서 경우의 수를 세주면 될 줄 ..
[ 문제 ] [백준] 9177. 단어 섞기 (자바 JAVA) 문제 링크 : https://www.acmicpc.net/problem/9177 9177번: 단어 섞기 세 개의 단어가 주어졌을때, 꿍은 첫 번째 단어와 두 번째 단어를 섞어서 세 번째 단어를 만들 수 있는지 궁금해졌다. 첫 번째와 두 번째 단어는 마음대로 섞어도 되지만 원래의 순서는 섞여서는 www.acmicpc.net # 접근 방법 및 풀이 어디 기업 코테 풀면서 봤던 문제 같아서 풀어봤다. 정답률 26으로 극악이다.. 처음에 풀고 50프로만 맞아서 풀이방법 찾아봤다. bfs로 접근해서 다시 풀었다. 입력받은 3개의 단어들은 char[] 배열로 받고, 인덱스로 비교한다. Queue에는 첫번째 단어 인덱스와, 두번째 단어인덱스를 담기위해 Po..
[ 문제 ] [백준] 2578. 빙고 (자바 JAVA) 문제 링크 : https://www.acmicpc.net/problem/2578 2578번: 빙고 첫째 줄부터 다섯째 줄까지 빙고판에 쓰여진 수가 가장 위 가로줄부터 차례대로 한 줄에 다섯 개씩 빈 칸을 사이에 두고 주어진다. 여섯째 줄부터 열째 줄까지 사회자가 부르는 수가 차례대로 www.acmicpc.net # 접근 방법 및 풀이 구현 문제다. 실버 5인데 실버5 보다는 실버3같은? 문제다. 5X5 map 크기에 입력을 받아 숫자를 담고, 사회자가 부르는 숫자대로 빙고를 체크해야한다. 사회자가 부르는 번호가 map의 어디 좌표 (i, j)에 있는지 알기 위해 HashMap을 이용해서 담았다. key는 번호고, value는 Point로 i,j를 담..
[ 문제 ] [SWEA] 5658. 보물상자 비밀번호 (자바 JAVA) 문제 링크 : https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRUN9KfZ8DFAUo SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com # 접근 방법 및 풀이 삼성 모의 역테중에 다소 쉬운 구현문제다. TreeSet을 이용해서 풀었다. 문제의 예시 그림엔 마름모 형태로 쉽게 이해하도록 되어있는데, 1차원 배열을 N길이 만큼 만들어 입력된 값을 넣고, 시계방향으로 한칸씩 회전한다고 했으므로 오른쪽으로 한칸씩 이동시켜주면 된다. 이때 N은 4의 배수로..
[ 문제 ] [백준] 2608. 로마 숫자 (자바 JAVA) 문제 링크 : https://www.acmicpc.net/problem/2608 2608번: 로마 숫자 첫째 줄과 둘째 줄에 하나씩 로마 숫자로 표현된 수가 주어진다. 입력된 각 수는 2000 보다 작거나 같고, 두 수의 합은 4000보다 작다. www.acmicpc.net # 접근 방법 및 풀이 문자열+구현+자료구조 문제다. 문제 제대로 안 읽고 규칙 대충 넘기고 풀었더니 완전 잘못 접근해서 다시 꼼꼼히 읽고 풀었다. 문제는 주어진 두개의 로마숫자를 더해 숫자로 표현하고, 해당 숫자를 다시 로마숫자로 표현해야한다. 따라서 makeNum(), makeString() 함수를 두개로 나눠 풀었다. 로마숫자 기호에 따라 숫자값이 있으므로 HashMa..