전체 글

프로그래밍 공부 기록
풀이 과정 사람들의 소득을 모두 더한 뒤 평균을 구한다. 배열을 for문으로 돌면서 평균보다 작거나 같은 개수를 세어준다. 정답 코드 package D3; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution_10505_소득불균형 { //전체 소득의 평균을 구한 뒤 //평균 이하의 소득인 사람이 몇명인지 구하는 문제 static int T; //테스트 케이스 static int N; //사람의 수 static int [] arr; //소득값을 넣어줄 배열 public static void mai..
풀이 과정 운동 시간의 범위만 잘 체크해주면 굉장히 쉽게 풀리는 문제이다. 정답 코드 package D3; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution_3431_준환이의운동관리 { //1주일에 L분 이상 U분 이하의 운동을 하여야 함 //이번 주에 X분 만큼 운동했음 //제한되어 있는 시간을 넘은 운동을 한 것인지, //그것이 아니라면 몇 분 더 운동을 해야 제한을 맞출 수 있는지 static int T; //테스트 케이스 static int L, U, X; //L분 이상, U분 이하 ..
풀이 과정 3으로 나누기만 하면 바로 풀리는 문제이다. 왜D3인지 모르겠는 문제이다. 정답 코드 package D3; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Solution_13218_조별과제 { //월화수 오전 9 ~ 10 시 30분 까지 진행되는 수업 //N명의 수강생 //한 조에 3명 이상의 학생으로 조를 구성해야 하며 구성된 조의 최댓값을 구하는 문제 //3명을 못 채우면 버리기 static int T; //테스트 케이스 static int N; //학생의 수 public static void main(String[] args) throws Numb..
풀이 과정 시작 시간과 종료 시간을 더해서 24 보다 작은지, 큰지, 같은지에 대한 조건 처리만 잘 해주면 어렵지 않게 풀리는 문제였다. 정답 코드 package D3; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution_12368_24시간 { static int T; //테스트케이스 개수 static int A; //시작 시간 static int B; //종료 시간 public static void main(String[] args) throws NumberFormatException, IO..
풀이 방법 짝수일 경우와 홀수일 경우에서 주어진 조건대로 연산해준다. 그 과정을 거치면서 num이 1이 될 때의 answer를 출력해주는데 int의 범위에 신경을 써주어야 하는 문제였다. 틀린 코드 class Solution { public int solution(int num) { int answer = 0; int cnt = 0; while(true) { if(num == 1 ){ answer = 0; break; } //짝수일 때 if(num % 2 == 0 ){ num = num / 2; answer++; if(answer >= 500) { answer = -1; break; } if(num == 1) { break; } } //홀수일 때 if(num % 2 == 1) { num = (num * ..
풀이 방법 String은 == 이 아니라 equals 를 사용해서 비교해주는 것만 제대로 알면 바로 풀리는 문제다. 정답 코드 class Solution { public String solution(String[] seoul) { String str = "Kim"; String answer = ""; int idx = 0; for(int i=0; i
풀이 과정 a와 b의 크기를 비교해서 더해주기면 하면 쉽게 풀리는 문제였다. 정답 코드 class Solution { public long solution(int a, int b) { long answer = 0; if(a < b) { for(int i=a; i b) { for(int i=b; i
풀이법 틀린 코드 import java.util.*; class Solution { public boolean solution(int x) { //각 자리수를 나누어 더하기 //더한 수로 x를 나누기 boolean answer = false; //각 자리수를 나누어 더한 합 int sum = 0; //x값 잠시 가져다 쓸 변수 int temp = x; //자리수를 나누어 저장해 줄 리스트 List list = new ArrayList(); while(x != 0) { list.add(temp%10); temp = temp / 10; } for(int i=0; i
개발자 정지은
PROGRAMMING DIARY