전체 글
-
[백준 1712번] 손익분기점 - Java //Wello Horld//Algorithm/BOJ(Baekjoon Online Judge) 2019. 7. 4. 21:36
BOJ 1712번 손익분기점 문제를 풀어보도록 하자 일단 문제 자체는 매우 간단하다 여기서 주의해야할 점은 입력으로 주어지는 고정비용 A, 가변비용 B, 그리고 노트북 가격인 C가 21억 이하의 자연수 라는 점이다 Java의 자료형인 int는 범위가 -2,147,483,648 ~ 2,147,438,647이므로, 해당문제에서 사용해선 안된다. 그렇다면 좀더 큰범위를 가지는 자료형중 long(-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807)을 사용 해야한다 그리고 또한가지 주의 해야되는게 손익분기점이 존재하지 않으면 -1 을 출력해야 된다. 즉, (C - B)가 0보다 크면 판매량을, 그렇지 않으면 -1을 출력해야 된다 손익분기점이 존재하지 않으면 어떻게해...
-
[백준 2798번] 블랙잭 - Java //Wello Horld//Algorithm/BOJ(Baekjoon Online Judge) 2019. 7. 4. 21:17
BOJ 2798번 문제인 블랙잭을 불어보도록 합시다 개인적으로 블랙잭은 어느정도 짱구를 돌리면 내게 유리하게 만들 수 있는 게임이라 생각되서 좋아하기도 하고 즐겨하는 게임이기도 하다 21이라는 영화도 감명깊게 봤고,, 그래서 블랙잭 게임을 만들어보는 문제인가 했는데, 그건 아니고 완전 새로운 개념의 문제가 떡하니 나와서 살짝 아쉬웠다 하지만 그건그거고 한번 풀기로 마음 먹었으면 풀어보는게 인지상정!! 먼저 list에다가 입력받은 값들 중 M보다 큰 값들을 집어 넣었다. 그러고 나서 내림차순으로 정렬을 해주었다.. 리스트를 내림차순으로 정렬 할 필요는 없는데 조금 다르게, 특이하게, 풀려고 하다가 귀찮아 질 것 같아서 포기하고 정렬한 부분만 남겨뒀다 그이후에 카드3장을 반복문으로 get해서 가장 최댓값을 ..
-
[백준 3052번] 나머지 - Java //Wello Horld//Algorithm/BOJ(Baekjoon Online Judge) 2019. 7. 4. 20:47
백준 알고리즘 3052번 나머지를 Java로 풀어보자 총 10개의 수를 입력받고 그 수들을 42로 나누고 남은 나머지가 중복 되는지 체크하면 되는 문제다. 정답율이 70%가 넘는 아주 쉬운 문제이므로, 쉽게 쉽게 풀어보자 일단 chk 라고 하는 크기가 42인 boolean 배열을 만들어준다. boolean[] chk = new boolean[42]; 그리고 각각 받은 수를 42로 나눠서 중복되지 않는 값이면 count하고, 중복된 값이면 그냥 건너뛰게 만들어주면 되겠네!! import java.io.*; import java.util.*; public class sample{ public static void main(String[] args) throws Exception { BufferedReader..
-
[백준 17293번] 맥주 99병 - Java //Wello Horld//Algorithm/BOJ(Baekjoon Online Judge) 2019. 6. 29. 17:34
BOJ 천하제일 코딩대회예선 C번 문제인 맥주 99병을 풀어봅시다 아니, 거 문제가 너무 긴거 아니오?? 일단 문제를 쉽게 해석해보면 처음에 자연수 N이 입력으로 주어지고, 처음에 벽에 K = N 만큼의 맥주 병이 있고, K bottles of beer on the wall, K bottles of beer. Take one down and pass it around, K-1 bottles of beer on the wall. K = 0 이 될때 까지 K를 빼주면서 위에 문장을 출력해주면 된다 예외상황으로, K = 2 일 때, 2 bottles of beer on the wall, 2 bottles of beer. Take one down and pass it around, 1 bottle of beer..
-
[백준 4949번] 균형잡힌 세상 - Java //Wello Horld//Algorithm/BOJ(Baekjoon Online Judge) 2019. 6. 29. 17:03
이 세상이 균형잡힌 세상인지 알아봅시다 문제를 보자마자 LIFO 방식으로 접근하면 쉽게 풀 수 있을 것 같아서 stack을 이용했습니다 '(' 와 '[' 을 입력받았을 때 stack 에다가 집어넣고, ')' 와 ']' 를 입력 받을 때 stack에서 집어넣은 값을 꺼내서 균형잡혀 있는지 확인해 줬습니다 if(c == '(' || c == '['){ stack.add(c); } else if(c == ')'){ if(!stack.empty() && stack.pop() == '(') continue; else { chk = false; break; } } else if(c == ']') { if(!stack.empty() && stack.pop() == '[') continue; else { chk = f..
-
[백준 17295번] 엔드게임 스포일러 - Java //Wello Horld//Algorithm/BOJ(Baekjoon Online Judge) 2019. 6. 29. 16:24
제 3회 천하제일 코딩대회예선의 첫번째 문제 [엔드게임 스포일러] 문제를 풀어보자 그냥 문제에 있는 어벤져스: 엔드게임의 영문표기를 출력만 하면 되는 문제이네요,, import java.io.*; import java.util.*; public class Main{ public static void main(String[] args) throws Exception { System.out.println("Avengers: Endgame"); } } 나중에 있을 천하제일 코딩대회에 입선을 향해 한 발걸음 내딛어 봅니다 문제 : https://www.acmicpc.net/problem/17295
-
[백준 17294번] 귀여운 수~ε٩(๑> ₃ <)۶з - Java //Wello Horld//Algorithm/BOJ(Baekjoon Online Judge) 2019. 6. 27. 17:34
BOJ에서 최근에 나온 문제중에 핫한 문제가 있어서 들고왔습니다 일단 문제자체는 매우 간단하네요 정수 K 가 입력으로 주어지고 등차수열이면 "◝(⑅•ᴗ•⑅)◜..°♡ 뀌요미!!" 를 등차수열이 아니면 "흥칫뿡!! " 을 출력하면 되는 문제네요 그러면 한번 풀어볼까요 일단 입력을 String으로 받아와서 각 자릿수를 비교하는게 좋겠군요 BufferedReader 을 이용해서 정수를 먼저 문자열로 받아오고, 등차값 r, 비교할 두개의 정수 a, b 와 체크해주기 위한 boolean값 chk 을 지정해줍니다 이렇게 지정해주면 그 이후는 a 와 b 를 비교해주면서 등차이면 chk를 false로 등차가 아니면 true로 해서 출력해주면 되겠습니다 import java.io.*; import java.util.*;..
-
[백준 15596번] 정수 N개의 합 - Java //Wello Horld//Algorithm/BOJ(Baekjoon Online Judge) 2019. 6. 27. 17:16
백준알고리즘(BOJ) 15596번 문제를 풀어보도록 합시다 이런 문제를 처음 접해본 사람들은 살짝 난감할 수도 있을 문제네요 위에 제출버튼을 눌러보면 소스코드가 나와있습니다. 여기에다가 코드를 더해서 제출하면 되는 문제입니다 총 길이가 n인 a행렬 전부를 더해주면 됩니다. a행렬의 길이가 주어지지 않았으니 a.length로 a행렬의 길이를 구해주고 ans에다가 a행렬의 각 값들을 더해주면 되겠네요 문제자체는 간단하죠? public class Test { long sum(int[] a) { long ans = 0; for(int i = 0; i < a.length; i++){ ans += a[i]; } return ans; } } 간단데쇼 문제 : https://www.acmicpc.net/problem/..