분류 전체보기
-
[java] 백준 알고리즘 1929번 소수 구하기 풀이알고리즘/백준 알고리즘 2018. 7. 4. 17:41
소수를 구할 때 해당 숫자의 제곱근 이상으로 나눌 필요가 없다는 공식을 활용해서 소수 구하기를 구현했다. * 풀이 소스 1234567891011121314151617181920212223242526272829303132333435363738 public class Baekjoon1929 { static StringTokenizer st; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out))..
-
[java] 백준 알고리즘 1181번 단어 정렬 풀이알고리즘/백준 알고리즘 2018. 7. 4. 16:54
이 문제를 풀면서 알게 된 유용한 개념은 HashSet은 중복을 허용하지 않는다! 이다. HashSet을 활용하면 출력 조건에서 '같은 단어가 여러번 입력된 경우에는 한번씩만 출력한다'를 만족시킬 수 있다. 그리고 Arrays.sort 기능에 숫자만 배열 가능한게 아니라 문자도 알파벳 순으로 배열하는 기능도 있다. 추가적으로, Comparator 형식으로 로직을 만들어서 비교할 수도 있다. 이들을 활용하면 풀 수 있다. * 풀이 소스 123456789101112131415161718192021222324252627282930313233343536373839 public class Baekjoon1181{ static StringTokenizer st; public static void main(Strin..
-
[java] 백준 알고리즘 1427번 소트인사이드 풀이알고리즘/백준 알고리즘 2018. 7. 4. 16:36
입력되는 값을 배열의 순서로 처리해서 만들면 빠르다. * 풀이 소스 123456789101112131415161718192021222324public class Baekjoon1427{ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); String inputNumber = br.readLine(); int[] sortArray = new int[10]; for(int i=0; i=0;..
-
[java] 백준 알고리즘 2108번 통계학 풀이알고리즘/백준 알고리즘 2018. 7. 4. 14:49
이 문제가 어려운 건 최빈값 때문이다. 최빈값이 여러개면 두번째 작은 값을 출력하라니... 최빈값을 모아놓고 거기서 또 크기 비교를 해야한다는 것이다. 나머지는 금방 구현했지만, 최빈값을 어떻게 처리할지 고민하는데 시간을 많이 보냈다. 일단 입력할 때부터 양수와 음수를 구분해서 배열을 만들었다. 이때 양수와 음수 배열에 입력값을 순서대로 넣는 것(배열 순서 0번째부터 ~배열의 최대 크기-1까지)이 아니라, 입력값이 배열 순서가 되도록 만들었다.(입력값이 10이라면 배열[10]가 +1이 되는 식)(오름차순을 쉽게 만드는 원리) 그리고 나머지는 소스에 주석을 참고하면 되겠다! * 풀이 소스 123456789101112131415161718192021222324252627282930313233343536373..
-
개발 첫 입문책 '클린 코드'를 읽고IT, 기술 도서 2018. 7. 4. 13:45
회사 선임연구원님이 말씀하시길, 신입이 꼭 읽었으면 하는 책 목록 중에 첫번째가 '클린 코드'였다. 책을 구입하고 느릿느릿 읽다보니 몇개월이 지나서야 다 읽을 수 있었다. 사실 이해한 부분은 20%? 정도 되려나. 코드가 나에게 익숙한 코드들이 아니라 그런지 이해하기 어려웠다. 그래도 기본적으로 지켜야할 개념 등을 알 수 있어 좋았다. 예를 들면 불필요하거나 중복된 코드는 최대한 줄여야한다. 1. 메서드나 변수를 만들 때 다른 사람이 봐도 한 눈에 이해할 수 있게 이름을 정해야 한다. 2. 캡슐화 시키고, 함수는 숨기는 것이 좋다 등이 있었다. 깨끗한 코드를 만들기 위해 개발자는 어떤 노력을 해야하는가를 굉장히 강조한 책이었는데, 선임님 말대로 나같은 초급 개발자가 보기에 필독서(?)같은 느낌이었다. T..