본문 바로가기

자바11

[백준 1012/자바] 유기농 배추 https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 진짜 푸는 데 오래 걸렸음... 나한테 생소한 개념들이라 이번에 이거 찾아보면서 공부 많이 한 것 같다 더해야됨 아래 참고한 블로그에 설명이 너무 잘 되어있어서 도움 많이 받았다 ✨ 참고 https://lotuus.tistory.com/98 풀이 인접한 배추를 찾아 탐색해야 하므로 DFS 사용 한 배추의 상하좌우 네 방향에 다른 배추가 위치한 경우에 서로 인접해있는 것이므로 dx, dy를 사용 배추의 경우 0.. 2024. 3. 19.
[백준 15649/Java] N과 M(1) https://www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 아직 백트래킹이 뭔지 잘 모르겠다. 개념은 이해했는데 이걸 코드로 어떻게 짜지 공부를 더 해야겠음 ✨ 참고 https://80000coding.oopy.io/85650ea5-e541-4b12-9b86-a958a99b7533 📌 백트래킹 한정 조건에서의 모든 경우의 수를 확인함. 해를 찾는 도중 그 경로가 해가 아닐 것 같으면 되돌아감 DFS 사용 풀이 위와 같이 각 수가 중복되지 않는 모든 경우.. 2024. 3. 11.
[백준 20920/Java] 영단어 암기는 괴로워 https://www.acmicpc.net/problem/20920 20920번: 영단어 암기는 괴로워 첫째 줄에는 영어 지문에 나오는 단어의 개수 $N$과 외울 단어의 길이 기준이 되는 $M$이 공백으로 구분되어 주어진다. ($1 \leq N \leq 100\,000$, $1 \leq M \leq 10$) 둘째 줄부터 $N+1$번째 줄까지 외울 단 www.acmicpc.net 방법이 생각나긴 했는데... 너무 오래 걸릴 것 같아서 다른 방법은 없을까 한참 고민했다. 그래도 일단 작성해서 돌려보긴 했는데 통과는 됐으나 역시 다른 사람들에 비해서 시간이 더 오래 걸림. 그래서 찾아보니 빈도수와 길이, 알파벳순 정렬을 굳이 따로 할 필요가 없었다. (난 따로 했음) ✨ 참고 https://propercodi.. 2024. 3. 10.
[백준 2477/Java] 참외밭 ❓ 정말 풀어보려고 시도는 했는데... 너무 안 돼서 나와 같은 풀이(전체 넓이에서 오목한 부분의 넓이 빼기)를 이용한 다른 사람의 코드를 확인했다. 사실 내 코드 중 어느 부분이 틀린 지 아직 모르겠어서 일단 올려두고 나중에 좀 더 보려 한다. ✨ 참고 https://velog.io/@jihun333/%EB%B0%B1%EC%A4%802477-%EC%B0%B8%EC%99%B8%EB%B0%AD-%EC%9E%90%EB%B0%94 [백준]2477 참외밭 (자바) [백준]2477 참외밭 (자바) velog.io 풀이 1 더보기 틀린 답안 밭의 경계선이 꺾여들어가는 경우 기존에 나왔던 방향의 중복이 연속으로 나옴 밭 경계선의 방향과 크기를 받을 때마다 해당 경계선의 앞뒤 경계선 방향 확인 앞뒤 경계선의 방향이 서.. 2023. 2. 16.
[백준 1620/Java] 나는야 포켓몬 마스터 이다솜 https://www.acmicpc.net/problem/1620 ❓ 풀긴 풀었는데 계속 시간초과가 나서 헤맸던 문제. HashMap, Array, ArrayList 다 사용해봤는데 계속 시간초과가 나서 다른 사람의 풀이를 참고한 후 내 풀이와 비교했다. ❗ HashMap을 이용했을 때 key로 value를 찾으려면 entrySet을 이용하는 방법밖에 없다고 생각했는데, 굳이 그럴 필요 없이 String 배열을 따로 생성해 포켓몬 이름만 저장하여 찾는 방법도 있었다. ✨ 참고 https://maivve.tistory.com/140 (JAVA) 백준 1620번 : 나는야 포켓몬 마스터 이다솜 https://www.acmicpc.net/problem/1620 1620번: 나는야 포켓몬 마스터 이다솜 첫째 줄.. 2023. 2. 6.
[백준 11729/Java] 하노이 탑 이동 순서 https://www.acmicpc.net/problem/11729 ✨ 참고 https://ko.wikipedia.org/wiki/%ED%95%98%EB%85%B8%EC%9D%B4%EC%9D%98_%ED%83%91 하노이의 탑 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 하노이의 탑(Tower of Hanoi)은 퍼즐의 일종이다. 세 개의 기둥과 이 기둥에 꽂을 수 있는 크기가 다양한 원판들이 있고, 퍼즐을 시작하기 전에는 한 기둥에 원판들 ko.wikipedia.org https://st-lab.tistory.com/96 [백준] 11729번 : 하노이 탑 이동 순서 - JAVA [자바] www.acmicpc.net/problem/11729 11729번: 하노이 탑 이동 순서 .. 2023. 1. 21.
[백준 2447/Java] 별 찍기 - 10 https://www.acmicpc.net/problem/2447 ❓ 진짜 며칠에 걸려서 풀었다... 사실 이렇게까지 안 풀리면 그냥 풀이를 봤었는데, 지금까지 재귀 문제를 만족스럽게 풀었던 적이 한번도 없었어서 오기로 풀어봤다. 만족스러운 풀이는 아니었지만 결과를 내는 데엔 성공했는데 시간 초과남. for문을 중첩 사용했기 때문에 당연한 결과긴 했는데 다른 방식으론 어떻게 풀어야할지 모르겠어서 결국 다른 분 코드 확인함. ❗ 작은 사각형 각각을 한 덩어리로 나눠 풀 수도 있었다. 아무래도 별을 찍어야하니 무조건 잘게 나눠야 한다고 생각했는데, 재귀 함수를 사용해 각 덩어리를 파고들어갈 수가 있었음. 내가 일일이 for문을 돌며 별 한 개씩 안 파고들어도 된다는 소리 ✨ 참고 https://st-lab... 2023. 1. 19.
[백준 24060/Java] 알고리즘 수업 - 병합 정렬 1 https://www.acmicpc.net/problem/24060 ❓ 병합 정렬 알고리즘에 대해선 잘 몰랐어서 문제를 풀기 전 먼저 관련 알고리즘에 대해 공부해야 했다. ❗ 병합 정렬 알고리즘이 뭔지 알면 괜찮게 풀 수 있을 듯... 난 공부를 안 해놨어서 좀 많이 헤맸다... 그래서 병합 정렬 내용을 좀 정리해봤음... ✨ 참고 https://hyunipad.tistory.com/124 [Java] 병합 정렬(Merge Sort) 병합 정렬(Merge Sort)은 안정 정렬 중 하나이며, 분할 정복 알고리즘을 사용한 정렬 방법입니다. 분할 정복(divide and conquer)은 하나의 문제를 두 개의 문제로 분리하고 각각 해결한 다음 결과를 모아 hyunipad.tistory.com https:/.. 2023. 1. 4.
[백준 11650] 좌표 정렬하기 - Java 문제 2차원 평면 위의 점 N개가 주어진다. 좌표를 x좌표가 증가하는 순으로, x좌표가 같으면 y좌표가 증가하는 순서로 정렬한 다음 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 x와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. 출력 첫째 줄부터 N개의 줄에 점을 정렬한 결과를 출력한다. ❓ 계속 고민해봤는데 정말 답이 안 나왔다. 0행에 x값, 1행에 y값을 저장하는 2차원 배열로 풀어보자니 0행 배열을 정렬하면 0행 배열과 1행 배열의 연관성이 끊김. 그래서 아예 String으로 입력 받아 [ic]Arrays.sort()[.. 2022. 12. 17.