분류 전체보기

코딩테스트 일기 (BAEKJOON)

BAEKJOON / 백준 - JAVA 15917번 노솔 방지문제야!!

2024.05.07기준 - 브론즈3백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 각각의 수를 2의 거듭제곱 형태로 나타낼 수 있는지를 확인하는 것입니다.각각의 테스트 케이스에서 수를 읽어들입니다.읽어들인 수 n에 대해 m은 n을 음수로 바꾼 값입니다. (m = n * -1)n과 m의 비트 AND 연산을 수행한 결과가 n과 같으면, n을 2의 거듭제곱으로 표현할 수 있다는 것을 의미합니다.따라서 결과로 1을 출력합니다.그렇지 않으면, n을 2의 거듭제곱으로 표현할 수 없으므로 결과로 0을 출력합니다.비트 연산을 이용하여 2의 거듭제곱 형태로 나타낼 수 있는지를 효율적으로 확인하여 문제를 풀이하였습니다.  코드import java.io.*;import java.util.*;public cl..

코딩테스트 일기 (BAEKJOON)

BAEKJOON / 백준 - JAVA 31780번 불사조

2024.05.02기준 - 실버5백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 주어진 조상 포닉스의 마력과 명령을 내린 횟수를 바탕으로, 모든 포닉스의 마력의 합을 구하는 문제입니다.각 명령마다 새로 생성된 포닉스의 마력을 계산하는 방식으로 접근할 수 있습니다.명령을 수행할 때마다 새로운 포닉스가 2마리씩 생성되므로, 각 명령에 대해 새로 생성된 포닉스들의 마력을 더해주면 됩니다. 여기서 주의할 점은 한 포닉스가 마법을 사용한 후에는 더 이상 마법을 사용할 수 없다는 점입니다.이를 고려하여 각 명령에 대해 새로 생성된 포닉스의 마력을 계산하면 됩니다. 마력을 사용하여 2마리의 새로운 포닉스를 만들어도 결국 2마리의 합은 조상 포닉스의 값과 같습니다.그렇기 때문에 스킬을 사용하는 횟수 만..

코딩테스트 일기 (BAEKJOON)

BAEKJOON / 백준 - JAVA 2847번 게임을 만든 동준이

2024.05.01기준 - 실버4백준, BEAKJOON, BOJ, JAVA, 자바 풀이게임의 각 레벨을 클리어할 때 얻는 점수가 주어졌을 때, 각 레벨의 점수를 조정하여 모든 레벨을 클리어할 때 얻는 총 점수를 최대화 합니다.점수는 항상 양수이고 1만큼 감소시키는 것은 1번의 작업입니다. 저는 스택을 활용해 문제에 접근을 했습니다.주어진 레벨의 점수를 스택에 저장한 후, 스택을 활용하여 각 레벨의 점수를 조정합니다.레벨을 순서대로 스택에 넣으면서, 이전 레벨의 점수보다 현재 레벨의 점수가 더 높다면 점수를 조정합니다.스택에 레벨의 점수를 순서대로 넣습니다.스택에서 레벨의 점수를 하나씩 빼면서, 이전 레벨의 점수보다 현재 레벨의 점수가 더 높은지 확인합니다.만약 현재 레벨의 점수가 이전 레벨의 점수보다 낮..

코딩테스트 일기 (BAEKJOON)

BAEKJOON / 백준 - JAVA 2841번 외계인의 기타 연주

2024.04.30기준 - 실버1백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 상근이의 상상의 친구인 외계인이 손가락을 수십억 개 가지고 있는 상황에서 기타 멜로디를 연주할 때,손가락을 가장 적게 움직여야 하는 횟수를 구하는 문제입니다. 한 번에 한 손가락으로 한 번의 프렛을 누르거나 떼는 것을 한 번의 손가락 움직임으로 정의합니다. 각 줄 별로 눌러야 하는 프렛을 저장할 리스트를 선언을 했습니다. 그 줄에 눌려있는 프렛이 없다면 (size가 0이라면),그 줄에 해당하는 list에 프렛 번호를 추가하고 count를 올려줍니다. 그 줄에 눌려있는 프렛이 있다면,눌러야 하는 프렛보다 더 높은 프렛들을 제거하면서 count를 올려줍니다.만약, 지금 눌러야 하는 프렛이 눌려져 있다면 count..

Coding_Slowly
'분류 전체보기' 카테고리의 글 목록 (73 Page)