티스토리

한 페이지가 될 수 있게 🌟
검색하기

블로그 홈

한 페이지가 될 수 있게 🌟

bono039.tistory.com/m

🍀

구독자
3
방명록 방문하기

주요 글 목록

  • [백준/JAVA] 1600번: 말이 되고픈 원숭이 📖 문제 https://www.acmicpc.net/problem/1600   💡  풀이 방식• BFS필요 자료구조- 상하좌우 이동을 위한 4방향 배열 dx,dy- 말인 경우 대각선 8방향 이동을 위한 배열 hx, hy- 격자판 정보 저장할 2차원 int형 배열- 해당 좌표에서 방문 여부와 말 이동찬스 사용 횟수를 저장하는 3차원 boolean형 배열 ⇒ chk[세로][가로][말 이동찬스 사용 횟수]  1. 정수 K를 입력받는다.2. 가로 W와 세로 H를 입력받는다.3. 크기가 H*W 인 격자판의 정보를 입력받는다.4. 맨 왼쪽 위부터 맨 오른쪽 아래까지 최단 거리로 간다고 했으므로 맨 왼쪽 위에 있는 (0, 0)부터 BFS를 수행한다.  - 2차원 배열의 좌표 내 방문 여부 뿐만 아니라, 매 탐색마.. 공감수 2 댓글수 0 2024. 9. 18.
  • [백준/JAVA] 2567번: 색종이 - 2 📖 문제 https://www.acmicpc.net/problem/2567  💡  풀이 방식• 구현1. 색종이 수를 입력받는다.2. 입력받은 색종이 위치의 행과 열에서 10 더한 부분(=정사각형 부분)까지를 1로 채운다.3. 흰색 도화지를 돌면서 현재 부분이 색종이가 붙은 부분(=1)이라면, 해당 지점에서 4방향을 탐색하며 격자 범위 내에 있고 주변이 0인 칸이거나, 격자 범위를 벗어난 값이라면 검은색 영역 부분으로 인식한다.  🔺 코드12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152import java.util.*;import java.io.*; public class Main.. 공감수 1 댓글수 1 2024. 9. 16.
  • [백준/JAVA] 1417번: 국회의원 선거 📖 문제 https://www.acmicpc.net/problem/1417   💡  풀이 방식•  그리디 - 우선순위 큐. 사람 수를 내림차순으로 정렬하는 우선순위 큐를 만들고, 득표 숫자들을 입력받는다.. 우선순위 큐를 돌면서 해당 후보의 득표 수가 다솜이 득표 수보다 크거나 같다면, 해당 후보의 득표 수를 1 감소시킨 후 큐에 새롭게 값을 추가한다. 그리고 다솜이의 득표 수를 +1하고, 정답도 +1한다.  🔺 코드1234567891011121314151617181920212223242526import java.util.*;import java.io.*; public class Main{    public static void main(String[] args) throws IOException .. 공감수 2 댓글수 0 2024. 9. 16.
  • [백준/JAVA] 4134번: 다음 소수 📖 문제 https://www.acmicpc.net/problem/4134   💡  풀이 방식• 브루트포스, 소수 판정 (에라토스테네스의 체). while문을 활용해 현재 숫자에서 1씩 키워보며 해당 숫자가 소수인지 확인한다.   - 해당 숫자가 소수인 경우 > 해당 숫자 출력   - 해당 숫자가 소수가 아닌 경우 >  +1해서 다음 숫자로 넘어가기   💥 유의사항- 입력받는 숫자 x의 범위를 넉넉하게 long형으로 잡는 것이 포인트!!  🔺 코드123456789101112131415161718192021222324252627282930313233343536373839import java.util.*;import java.io.*; public class Main {    public static.. 공감수 0 댓글수 0 2024. 9. 12.
  • [백준/JAVA] 1935번: 후위 표기식2 📖 문제 https://www.acmicpc.net/problem/1935   💡  풀이 방식• 스택Double형을 저장하는 스택을 생성한다. 명령어를 순회하며 피연산자(알파벳에 해당하는 숫자)는 스택에 넣고 , 연산자가 나오면 스택에서 꺼내고 연산한 결과를 스택에 다시 넣는다.   🔺 코드123456789101112131415161718192021222324252627282930313233343536373839404142434445464748import java.util.*;import java.io.*; public class Main {    public static void main(String[] args) throws IOException {        BufferedReader br .. 공감수 1 댓글수 1 2024. 9. 8.
  • [백준/JAVA] 1027번: 고층 건물 📖 문제 https://www.acmicpc.net/problem/1027   💡  풀이 방식• 브루트포스, 기하학. 고층 건물이 보이기 위해서는, 두 지붕을 잇는 선분이 A와 B를 제외한 다른 고층 빌딩을 지나거나 접해서는 안 된다.→ A와 B를 이은 선분의 기울기를 구하고 이를 활용하여 문제를 풀 수 있다.선분의 기울기 구하는 공식: 건물 A와 B를 이은 선분의 기울기 = 건물A 높이 - 건물B 높이 / 건물 A와 B의 거리  - N개의 빌딩을 모두 둘며, 해당 건물에서 볼 수 있는 고층 건물의 수를 구한다. (브루트포스)  ㄴ 해당 위치의 왼쪽    부분을 탐색할 때는, 기울기가 감소해야 건물이 보인다.  ㄴ 해당 위치의 오른쪽 부분을 탐색할 때는, 기울기가 증가해야 건물이 보인다.   🔺 코.. 공감수 0 댓글수 0 2024. 9. 4.
  • [백준/JAVA] 16967번: 배열 복원하기 📖 문제 https://www.acmicpc.net/problem/16967   💡  풀이 방식• 구현배열을 그려봤을 때 겹치는 부분과 안 겹치는 곳의 패턴을 파악하는 것이 핵심이다.  🔺 코드12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849import java.util.*;import java.io.*; public class Main {    public static void main(String[] args) throws IOException {        BufferedReader br = new BufferedReader(new InputStreamReader(System.in).. 공감수 0 댓글수 0 2024. 9. 3.
  • [백준/JAVA] 11501번: 주식 📖 문제 https://www.acmicpc.net/problem/11501   💡  풀이 방식• 그리디1. 주식 시세 정보를 저장한다.2. 주식 정보를 역방향으로 탐색하며 최대 이익 값을 갱신한다.   - Why? 오늘 이후 최대 이익을 낼 수 있는 날에 판매하기 위해   - 시간 복잡도 : O(N)3. 구한 최대 이익 값을 결과로 출력한다.  💥 유의사항- 앞에서부터 순방향으로 순회하며 구한다면, 시간 복잡도는 O(N^2)이고 시간 초과가 뜬다..   🔺 코드123456789101112131415161718192021222324252627282930313233343536373839import java.util.*;import java.io.*; public class Main {    publ.. 공감수 0 댓글수 0 2024. 8. 21.
  • [백준/JAVA] 20310번: 타노스 📖 문제https://www.acmicpc.net/problem/20310   💡  풀이 방식• 그리디1. 입력받은 문자열 s에서 0과 1의 갯수를 세며 StringBuilder 객체로 문자열을 민든다.2. 0과 1의 갯수를 각각 절반값으로 교체한다.3. 앞에서부터 1을 없애며, 1의 갯수가 0일 때 종료한다.  0은 뒤에서부터 없애며, 0의 갯수가 0일 때 종료한다. ⇒ 그리디.  가능한 문자열 중 사전순으로 가장 빠른 것을 구한다.5. 문자열에서 남은 0과 1만을 출력한다.  💥 유의사항사전순으로 가장 빠른 것 출력하기  🔺 코드123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051.. 공감수 0 댓글수 0 2024. 8. 16.
  • [백준/JAVA] 22233번: 가희와 키워드 📖 문제 https://www.acmicpc.net/problem/22233   💡  풀이 방식• Map1. Map에 (단어, 현재 단어가  쓰였는지 나타내는 숫자)를 저장한다. (1: 메모장에 남음 / 0 : 메모장에 없음)2. M개의 정보를 돌며 콤마 단위로 단어를 분리한다. 분리한 단어가 현재 단어장에 있고 쓰인 적 없는 단어(1)라면, 쓰였다고 변경하고(0) 메모장에 남은 단어 수를 -1하고 M번 결과를 출력한다.   🔺 코드1234567891011121314151617181920212223242526272829303132import java.util.*;import java.io.*; public class Main {    public static void main(String[] arg.. 공감수 0 댓글수 0 2024. 8. 15.
  • [백준/JAVA] 1863번: 스카이라인 쉬운거 📖 문제 https://www.acmicpc.net/problem/1863   💡  풀이 방식• 스택. 건물의 높이(y)가 달라지는 걸 확인하기 위해 스택을 활용한다. - 건물의 높이가 낮아진 경우           > 뒤에 있는 건물이 끝났다는 의미. 스택이 비지 않을 때까지 한 빌딩과 해당 빌딩과 같은 높이의 빌딩을 같은 빌딩으로 취급하며 제거- 건물의 높이가 같은 빌딩인 경우  > skip- 건물의 높이가 높아진 경우           > 스택에 push해 최고층 높이의 건물 갱신  💥 유의사항- 입력을 다 받았는데 스택에 값이 남아있다면, 건물이 남아있는 것과 마찬가지이므로 남아있는 값의 갯수만큼 하나의 건물로 취급해 건물 갯수를 센다.  🔺 코드123456789101112131415161.. 공감수 0 댓글수 0 2024. 8. 13.
  • [백준/JAVA] 20006번: 랭킹전 대기 📖 문제 https://www.acmicpc.net/problem/20006   💡  풀이 방식• 구현, 시뮬레이션필요 자료구조- 플레이어 레벨, 이름, 방에 들어갔는지 여부 저장하는 Player 객체- 플레이어 정보 저장용 배열  . p개의 플레이어 정보를 입력받을 Player 배열을 생성한다. . p개의 플레이어 정보를 입력받는다. . 현재 i번째 플레이어가 이미 방에 배치된 플레이어가 아니고, 레벨 차이가 10 이하라면, 방에 추가한다. . 이름 순으로 정렬한 후 출려갛기 위해 플레이어 이름으로 정렬한다. . 방의 정원이 모두 찬 경우, 게임을 시작한다. / 그게 아니라면 대기를 출력한다. . 현재 i번쨰 방에 있는 플레이어 정보를 모두 출력한다.  🔺 코드12345678910111213141.. 공감수 0 댓글수 0 2024. 8. 7.
  • [백준/JAVA] 9017번: 크로스 컨트리 📖 문제 https://www.acmicpc.net/problem/9017   💡  풀이 방식• 구현필요 자료구조- 등수 저장용 int형 배열 (ranks)- 각 팀별 인원 수 저장용 Map (cntMap)- 가장 큰 숫자의 팀 번호 저장용 int형 변수- 해당 팀의 5번째 선수 저장용 배열 (fifth)-  팀 별 최종 점수 저장용 Map (scoreMap)-  6명 이상인 팀 별로 몇 명 있는지 저장용 Map (tmpMap)- 가장 낮은 점수 저장용 int형 변수 (result)- 5번째 점수 저장용 int형 변수 (fifthScore) . N개의 등수를 입력받는다.    - ranks 배열에 저장한다.    - 각 팀 별 팀원 수를 cntMap에 저장한다.    - 가장 큰 번호의 팀 teamN.. 공감수 0 댓글수 0 2024. 7. 30.
  • [백준/JAVA] 3758번: KCPC 📖 문제 https://www.acmicpc.net/problem/3758    💡  풀이 방식• 정렬. 문제의 조건에 맞게 정렬한다. @Overridepublic int compareTo(Info i) { if (this.score == i.score) { // 총점 높은 순 if (this.cnt == i.cnt) // 총점 같고 제출 횟수 같으면, 마지막 제출 시간 더 빠른 순 return this.time - i.time; return this.cnt - i.cnt; // 총점 같고, 제출 횟수 다르면, 제출 횟수 적은 순순 } return i.score - this.score;}   🔺 코드12345678910.. 공감수 0 댓글수 0 2024. 7. 16.
  • [백준/JAVA] 2531번: 회전 초밥 📖 문제 https://www.acmicpc.net/problem/2531   💡  풀이 방식• 투 포인터1. 입력된 정보를 저장한다.  - int[N] sushi : 초밥 종류 저장 배열  - int[d+1] chk  :  초밥 각 종류가 몇 개 존재하는지 나타내는 배열 2. 투 포인터를 이용해 먹을 수 있는 최대 가짓수를 구한다.  1) 회전하지 않았을 때 초밥을 먹는다.  2)  N-1번 회전하며 탐색을 진행한다.      → [규칙] 처음 먹은 초밥은 제거하고, 마지막+1 번째 초밥은 추가한다.  🔺 코드12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152import java.. 공감수 0 댓글수 0 2024. 7. 15.
  • [백준/JAVA] 9205번: 맥주 마시면서 걸어가기 📖 문제 https://www.acmicpc.net/problem/9205   💡  풀이 방식• 플로이드 와샬필요 자료구조- 위치들 저장용 리스트- 위치들 중 두 지점 간 방문 가능한지 표시하는 2차원형 boolean형 배열 1. 모든 위치들을 입력받아 리스트에 저장한다.2. 모든 위치들 중 2개를 골라 두 위치 간의 맨해튼 거리를 계산한다. (맨해튼 거리가 1000 이하라면 해당 거리로 이동할 수 있다.)3. 지점 A에서 B로 이동 가능하고, B에서 C로 이동 가능하다면 A에서 C로 이동 가능하므로 이동 가능하다는 표시를 한다. (플로이드-와샬)  💥 유의사항플로이드-와샬은 시간 복잡도가 O(N^3)이므로 사용 시 주의가 필요하다.  🔺 코드123456789101112131415161718192.. 공감수 0 댓글수 0 2024. 7. 14.
  • [백준/JAVA] 2138번: 전구와 스위치 📖 문제 https://www.acmicpc.net/problem/2138   💡  풀이 방식• 그리디- 스위치의 성격 상(on/off) 매 순간의 선택이 최적의 선택이 될 수 있으므로 그리디 사용 가능. 1. 첫 번째 전구의 스위치를 [켜는 / 끄는] 경우를 모두 고려해야 한다.2. 2~N번째 전구까지 반복하며, i-1번째 인덱스의 현재값 != i-1번째 인덱스의 기댓값이면 스위치를 켠다.3. 1번의 2가지 경우 모두 불가능하다면 -1을 출력하고, 아니라면 2개 중 최솟값을 출력한다.  🔺 코드12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758import j.. 공감수 0 댓글수 0 2024. 7. 11.
  • [백준/JAVA] 20437번: 문자열 게임 2 📖 문제 https://www.acmicpc.net/problem/20437   💡  풀이 방식• 슬라이딩 윈도우1. 입력받는 문자열 w의 알파벳 갯수를 센다.int[] alpha = new int[26];for(int i = 0 ; i  2. 입력받은 문자열을 돌면서 해당 문자의 갯수가 k개 이하라면 탐색을 종료한다.if(alpha[w.charAt(i) - 'a']  k개 이상이라면, 뒷 문자와 비교하며 같은 문자의 갯수를 센다.if(w.charAt(i) == w.charAt(j)) cnt++; 그리고 같은 문자가 k개가 되는 순간, 문제에서 요구하는 조건만큼의 문자를 포함하는 길이가 되었으므로min, max 값을 갱신한다.   🔺 코드1234567891011121314151617181920.. 공감수 0 댓글수 0 2024. 7. 6.
  • [백준/JAVA] 2493번: 탑 📖 문제 https://www.acmicpc.net/problem/2493  💡  풀이 방식• 스택필요 자료구조- (탑 번호, 높이) 값을 저장하는 int[]형 스택 탑의 높이를 미리 입력받지 않아도 되고,탑의 높이를 입력 받으면서 이미 입력받은 값들과 비교하며 풀면 된다.  - 입력받은 높이가 현재 높이보다 낮은 경우, 해당 탑에는 레이저가 닿을 수 없으므로 제거(pop)한다.- 현재 스택이 비어있다면, 레이저가 닿을 수 있는 탑이 없으므로 0을 출력한다.   💥 유의사항데이터 크기가 크므로, 완전탐색을 썼다가는 시간 초과가 발생한다.  🔺 코드12345678910111213141516171819202122232425262728293031323334353637import java.util.*;i.. 공감수 0 댓글수 0 2024. 7. 5.
  • [백준/JAVA] 12919번: A와 B 2 📖 문제 https://www.acmicpc.net/problem/12919   💡  풀이 방식• 재귀S에서 T를 만드는 재귀를 수행하는 게 아니고,T에서 문자열을 지우면서 S를 만드는 재귀를 수행하는 것이다.[재귀 함수]- (종료 조건) 첫 번째 문자열과 두 번째 문자열의 길이가 같고, 두 문자열이 같다면, 1을 출력한다. (같지 않다면 0을 출력한다.)- 두 번째 문자열의 마지막 글자가 A인 경우> 마지막 글자를 하나 뺀 값을 재귀함수의 인자로 갖고 가 재귀를 수행한다.- 두 번째 문자열의 맨 앞 글자가 B인 경우 > 맨 앞 글자를 하나 빼고, 뒤집은 값을 인자로 가져가 재귀를 수행한다.   🔺 코드123456789101112131415161718192021222324252627282930313.. 공감수 0 댓글수 0 2024. 6. 24.
  • [백준/JAVA] 2304번: 창고 다각형 📖 문제 https://www.acmicpc.net/problem/2304   💡  풀이 방식•  브루트포스 가장 높은 길이를 기준으로 왼쪽 부분과 오른쪽 부분으로 나눠 지붕을 메꾼다. 1. 기둥들의 위치와 높이를 입력받는다.2. 입력받은 기둥들의 정보를 위치 기준 오름차순 정렬한다.3. 가장 높은 기둥의 길이를 기준으로 왼쪽 부분에서 기둥이 커지는 구간의 면적만 계산한다. (맨 왼쪽 0부터 pivot까지)4. 가장 높은 기둥의 길이를 기준으로 오른쪽 부분에서 기둥이 작아지는 구간의 면적만 계산한다. (맨 오른쪽부터 pivot까지)5. 제일 큰 기둥의 높이를 더한다.   🔺 코드12345678910111213141516171819202122232425262728293031323334353637383.. 공감수 0 댓글수 0 2024. 6. 23.
  • [백준/JAVA] 1958번: LCS 3 📖 문제 https://www.acmicpc.net/problem/1958   💡  풀이 방식• LCS문자열이 3개이므로, 3차원 DP로 LCS 길이를 구하면 된다. - 3중 for문을 이용해 i == j == k인 지점을 찾아 갯수를 센다.(i, j, k) = max( (i-1, j, k), max( (i, j-1, k), (i, j, k-1) ) )   🔺 코드123456789101112131415161718192021222324252627282930313233import java.util.*;import java.io.*; public class Main {    static int[][][] dp;    // 3차원 DP    static char[] A,B,C;        public s.. 공감수 0 댓글수 0 2024. 6. 22.
  • [백준/JAVA] 20364번: 부동산 다툼 📖 문제 https://www.acmicpc.net/problem/20364    💡  풀이 방식• 트리필요 자료구조- 점유된 땅의 수 저장하는 int형 배열- 점유되었는지 상태를 표시할 boolean형 배열  1. 땅 개수 N과 오리 수 Q를 입력받는다.2. i번째 오리가 원하는 땅 번호를 입력받는다.3. 2에서 입력받은 오리가 원하는 땅 번호를 갈 수 있는지 확인해 출력한다.  - 원하는 땅에서 1까지 거슬러 올라오며(/2) 점유된 상태인지 확인한다.    ㄴ 점유된 상태인 경우, 점유된 땅의 번호를 정답으로 출력한다.    ㄴ 정답이 초기값 0에서 바뀌지 않은 경우, 해당 번호의 땅을 점유 처리한다.   🔺 코드1234567891011121314151617181920212223242526272.. 공감수 0 댓글수 0 2024. 6. 22.
  • [백준/JAVA] 16960번: 스위치와 램프 📖 문제 https://www.acmicpc.net/problem/16960   💡  풀이 방식• 구현필요 자료구조- 램프 갯수 저장용, 크기가 M+1인 int형 배열- 램프 정보 저장 리스트 배열 1. 각 스위치에 몰린 램프 정보를 저장한다.for(int i = 1 ; i 0) { int tmp = Integer.parseInt(st.nextToken()); list[i].add(tmp); arr[tmp]++; }}   2. 스위치 수만큼 반복문을 돌면서, 각각의 스위치에 몰린 램프의 idx 값을 배열에서 하나씩 빼본다.그러면서 유지가 되는지/아닌지 flag 변수로 판단한다.boolean flag = true; // 하나씩 빼면서 유지되는지 .. 공감수 0 댓글수 0 2024. 6. 20.
  • [백준/JAVA] 3029번: 경고 📖 문제 https://www.acmicpc.net/problem/3029   💡  풀이 방식• 문자열1. 첫째 줄에 입력받은 현재 시간을 세미콜론(:) 단위로 분리한다.2. 둘째 줄에 입력받은 나트륨 던질 시간을 세미콜론(:) 단위로 분리한다.3. 둘째 줄에서 입력받은 (시간-분-초)를 첫째 줄에서 입력받은 (시간-분-초)로 빼는 연산을 수행한다.4. 연산 후, 정인이가 기다려야 하는 시간을 출력해야 할 때 시간/분/초 중 한 자리 수의 경우, 앞에 0을 붙여 출력하도록 한다. (두 자릿수면 그냥 출력한다.)   💥 유의사항정인이는 적어도 1초를 기다린다고 했으므로,1과 2에서 입력받은 시간이 같은 경우, 24:00:00이 나오도록 처리해 줘야 한다.   🔺 코드123456789101112131.. 공감수 0 댓글수 0 2024. 6. 16.
  • [백준/JAVA] 2668번: 숫자고르기 📖 문제 https://www.acmicpc.net/problem/2668   💡  풀이 방식• DFS1. 위쪽 줄의 숫자들을 출발지로, 아랫 줄의 숫자들을 도착지로 한 그래프를 생성한다.2. 그래프 내에서 생성된 사이클을 찾고, 사이클을 만드는  숫자를 리스트에 넣고 오름차순 정렬해 출력한다.  - 사이클 발생 여부 확인 : [DFS] 출발 숫자 > arr[출발 숫자] > arr[arr[출발 숫자]]  - 탐색하다가 출발 숫자를 다시 만나면 사이클 하나가 완성된 거고, 이 값을 리스트에 넣는다.   🔺 코드1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950import java.util... 공감수 0 댓글수 0 2024. 6. 13.
  • [백준/JAVA] 20125번: 쿠키의 신체 측정 📖 문제 https://www.acmicpc.net/problem/20125   💡  풀이 방식• 구현- 심장 : 본인의 위치 포함 본인을 둘러싼 상하좌우가 모두 쿠키(*)일 때 심장이다.- 허리 : 심장 위치를 기준으로 아래쪽(행 방향+1)으로 계속 쿠키인 부분- 왼팔 : 심장부터 왼쪽(열-1)으로 뻗어나간 부분- 오른팔  : 심장부터 오른쪽(열+1)으로 뻗어나간 부분- 왼다리 : 허리 왼쪽 아래쪽부터 아래쪽(행+1)으로 뻗어나간 부분- 오른다리 : 허리 오른쪽 아래쪽부터 아래쪽(행+1)으로 뻗어나간 부분   🔺 코드123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555.. 공감수 0 댓글수 1 2024. 6. 13.
  • [백준/JAVA] 10431번: 줄세우기 📖 문제 https://www.acmicpc.net/problem/10431   💡  풀이 방식• 시뮬레이션1. TC 번호와 20개의 숫자를 입력받는다.2. 각 학생들에 대해 본인 앞에 있는 본인보다 키 큰 사람 수를 구한다. ⇒ 시간 복잡도 : O(TC * N^2) 🔺 코드123456789101112131415161718192021222324252627282930313233343536import java.util.*;import java.io.*; public class Main {    static int T, P;        public static void main(String[] args) throws IOException {        BufferedReader br = new Buf.. 공감수 0 댓글수 0 2024. 6. 12.
  • [백준/JAVA] 1240번: 노드사이의 거리 📖 문제 https://www.acmicpc.net/problem/1240   💡  풀이 방식• BFS 1.  인접 리스트를 만들고 N-1개의 연결 정보를 양방향으로 저장한다.2. M개의 노드 쌍에 대해 첫 번째 노드부터 두 번째 노드까지의 거리를 구한다. (BFS)   🔺 코드12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576import java.util.*;import java.io.*; public class Main {    static int N,M;    static ListNode>[.. 공감수 0 댓글수 1 2024. 6. 11.
  • [백준/JAVA] 18429번: 근손실 📖 문제 https://www.acmicpc.net/problem/18429   💡  풀이 방식• DFS (조합)백트래킹으로 운동 키트 번호를 뽑는다. (중복 X)뽑은 운동 키트를 순서대로 돌면서, 중량이 모두 500 이상인 경우만 정답 +1을 한다.  🔺 코드1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556import java.util.*;import java.io.*; public class Main {    static int N,K,answer;    static int[] arr;    static boolean[] chk;    static ListInt.. 공감수 0 댓글수 0 2024. 6. 9.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.