lovesm135의 등록된 링크

키자드에 등록된 총 137개의 포스트를 확인하실 수 있습니다.

Naver Blog

프로그래머스 최대공약수와 최소공배수 - java

문제에 함정이 있다. 최소공배수가 int 범위를 벗어날 수 있으므로 long으로 풀어야 한다. (15번 실패 이유) import java.util.*; import java.math.*; class Solution { public long[] solution(int n, int m) { long[] answer = {0,0}; long commonFactor = 0; long commonMulti = 0; if (m > n) { int o = n; n = m; m = o; // consequently, n > m } // 이하 factors 구하기 for (long i = 1 ; i <= (long)m ; i++) { if ((long)m%i == 0 && (long)n%i == 0) { commonFactor = i; commonMulti = (long)n*(long)m/commonFactor; } } answer[0] = commonFactor; answer[1] = common

Naver Blog

Integer(Long, Double), int(long, double), array(배열), list(리스트) 변환 종합 - java

Integer(Long, Double), int(long, double), array(배열), list(리스트, ArrayList) (wrapper class) Integer array를 (primitive type) int array로 변경 ↓↓ ※ 참고 Integer[] arrInteger -> int[] arrInt int[] arrInt = Arrays.stream(arrInteger).mapToInt(Integer::intValue).toArray(); (primitive type) int array를 (wrapper class) Integer array로 변경 ↓↓ ※ 참고 int[] arrInt -> Integer[] arrInteger Integer[] arrInteger = Arrays.stream(arrInt).boxed().toArray(Integer[]::new); boxed() 메서드는 primitive stream 값들을 wrapper class로 바꿔준다.

Naver Blog

프로그래머스 같은 숫자는 싫어 - java

import java.util.*; public class Solution { public int[] solution(int []arr) { int[] answer = {}; ArrayList<Integer> dupRemoved = new ArrayList<>(); dupRemoved.add(arr[0]); for (int i = 0 ; i < arr.length ; i++) { if (i >= 0 && i+1 < arr.length && arr[i] != arr[i+1]) { dupRemoved.add(arr[i+1]); } } answer = dupRemoved.stream().mapToInt(Integer::intValue).toArray(); return answer; } } 출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges

Naver Blog

프로그래머스 3진법 뒤집기 - java

import java.util.*; class Solution { public int solution(int n) { int answer = 0; ArrayList<Integer> list = new ArrayList<>(); int remaining = n; int count = -1; while (remaining > 0) { list.add(remaining%3); remaining/=3; count++; } System.out.println(list.toString()); for (int i = 0 ; i<list.size() ; i++){ answer+=Math.pow(3,count)*list.get(i); System.out.println(answer); count--; } return answer; } } n진수 계산하는 거 까먹으면 곤란함.(복습) list에 n으로 나눈 나머지 값을 넣으면서 list를 만들면, 0번째 자리가 n진수의 1의 자리 값. 45 = 1200(

Naver Blog

프로그래머스 이상한 문자 만들기 - java

import java.util.*; class Solution { public String solution(String s) { String answer = ""; System.out.println('A'+0); System.out.println('a'+0); StringBuilder sb = new StringBuilder(); boolean isOdd = true; for (int i = 0 ; i<s.length() ; i++) { if (isOdd) { if(s.charAt(i) == ' '){ sb.append(' '); isOdd = true; } else if (s.charAt(i) >= 'a' && s.charAt(i) <= 'z') { sb.append((char)(s.charAt(i)-32)); isOdd = false; } else { sb.append(s.charAt(i)); isOdd = false; } } else { if(s.charAt(i) == ' ')

Naver Blog

ArrayList 정렬하기 (오름차순, 내림차순, 사용자 정의) - java

https://hianna.tistory.com/569 [Java] ArrayList 정렬하기 (오름차순, 내림차순, 사용자 정의) Collections.sort() 오름차순으로 정렬하기 내림차순으로 정렬하기 대소문자 구분없이 정렬하기 List.sort() - Java 8 이후 오름차순으로 정렬하기 내림차순으로 정렬하기 대소문자 구분없이 정렬하기 사용자 정의 Comparable Comparator 1. Collections.sort() public static void sort(List list) public static void sort(List list, Comparator hianna.tistory.com

Naver Blog

배열 정렬(Array Sorting) (오름차순, 내림차순) - java

https://codechacha.com/ko/java-sorting-array/ Java - 배열 정렬(Sorting) (오름차순, 내림차순) Arrays.sort()을 이용하면 쉽게 배열(Array)을 내림차순, 오름차순으로 정렬(sorting)할 수 있습니다. Integer, String 등 구분없이 모든 객체를 정렬할 수 있습니다. 또한, 클래스에 Comparable을 구현하면 객체 배열(Array)도 순서대로 정렬할 수 있습니다. 예제와 함께 Array를 sorting하는 방법에 대해서 알아보겠습니다. codechacha.com

Naver Blog

String[] 배열을 List, List를 String[] 배열로 변환

String[] arr -> ArrayList<String> list ArrayList<String> list = new ArrayList<String>(Arrays.asList(arr)); ArrayList<String> list -> String[] arr String[] arr = list.toArray(new String[0]);

Naver Blog

프로그래머스 가장 먼 노드 - java

import java.util.*; class Solution { public static Queue<Integer> bfs = new LinkedList<>(); public static ArrayList<ArrayList<Integer>> graph = new ArrayList<>(); public int solution(int n, int[][] edge) { int answer = 0; for (int i = 0; i <= n; i++) { ArrayList<Integer> node = new ArrayList<>(); graph.add(node); } for (int i = 0; i < edge.length; i++) { graph.get(edge[i][0]).add(edge[i][1]); graph.get(edge[i][1]).add(edge[i][0]); } boolean[] visitedFlag = new boolean[n+1]; int[] distanceAndNode

Naver Blog

프로그래머스 보석 쇼핑 - java

투 포인터 문제 import java.util.*; class Solution { public int[] solution(String[] gems) { int[] answer = {0, 0}; int arraySize = gems.length; int startIndex = 0; int endIndex = gems.length; int left = 0; int right = 0; int distance = Integer.MAX_VALUE; HashMap<String, Integer> checking = new HashMap<>(); HashSet<String> gemSet = new HashSet<>(); // 보석 종류 파악 for (String s: gems) { gemSet.add(s); } while (true) { // gemSet.size() == checking.size()이면 right 포인터가 오른쪽으로 이동하면서 모든 종류의 보석이 최소 1개 이상 // 확인된 것.

Naver Blog

Arrays.sort() 두 번째 원소 기준 다음, 첫 번째 원소 기준 정렬

Integer[][] public int[] solution() { int[] answer = {0, 0}; ArrayList<Integer[]> list = new ArrayList<>( Arrays.asList(new Integer[]{1,4}, new Integer[]{4, 5}, new Integer[]{3,7}, new Integer[]{2, 5}) ); Integer[][] array = list.toArray(new Integer[0][2]); print(array); System.out.println(); Arrays.sort(array, new Comparator<Integer[]>() { // o1 o2 순서로 두 원소가 parameter 로 들어옴 // compare 결과가 양수면 자리를 바꿈. @Override public int compare(Integer[] o1, Integer[] o2) { if (o1[1] == o2[1]) { // o2[0]가 o1[0

Naver Blog

프로그래머스 무인도 여행 - java

import java.util.*; class Solution { int mVisited[][] = null; public int[] solution(String[] maps) { int width = maps[0].length(); int height = maps.length; mVisited = new int[height][width]; ArrayList<Integer> daysCanAliveList = new ArrayList<>(); int daysCanAliveIndex = 0; for (int cursorRow = 0; cursorRow < height; cursorRow++) { for (int cursorCol = 0; cursorCol < width; cursorCol++) { if (mVisited[cursorRow][cursorCol] == 0 && maps[cursorRow].charAt(cursorCol) != 'X') { daysCanAliveList.add

Naver Blog

프로그래머스 문자열 내 p와 y의 개수 - java

class Solution { boolean solution(String s) { boolean answer = true; // [실행] 버튼을 누르면 출력 값을 볼 수 있습니다. System.out.println("Hello Java"); int countP = 0; int countY = 0; for (int i = 0 ; i < s.length()/2 ; i++) { System.out.println("i:"+i+" char:"+s.charAt(i)); if (s.charAt(i) == 'p' || s.charAt(i) == 'P') { countP++; } else if (s.charAt(i) == 'y' || s.charAt(i) == 'Y') { countY++; } int j = (s.length()-1) - i; // 투 포인터 접근 System.out.println("j:"+j+" char:"+s.charAt(j)); if (s.charAt(j) == 'p' || s

Naver Blog

프로그래머스 정수 내림차순으로 배치하기 - java

class Solution { public long solution(long n) { int[] count = new int[10]; // 0~9 숫자 카운터 long remaining = n; while (remaining > 0){ count[(int)(remaining%10)]++; // casting 주의 remaining/=10; } String s = ""; for (int i = 9 ; i >= 0 ; i--){ for (int j = 0 ; j < count[i] ; j++) { s = s+i; System.out.println(s); } } long l = Long.parseLong(s); return l; } } 출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges

Naver Blog

프로그래머스 나머지가 1이 되는 수 찾기 - java

import java.math.*; class Solution { public int solution(int n) { int answer = 0; for (int i = 2; i<=Math.sqrt(n) ; i++) { // 주어진 n이 소수인지 먼저 찾기 // 2부터 root값 까지만 보면 됨 if (n%i == 1) { answer = i; break; } } if (answer == 0) { return n-1; } return answer; } } 출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges

Naver Blog

프로그래머스 두 정수 사이의 합 - java

class Solution { // int 범위를 벗어나는 경우가 발생하므로 long으로 캐스팅 필수 public long solution(int a, int b) { long answer = 0; // swap if (a>b) { int c = a; a = b; b = c; // consequently a<b } System.out.println ("a:"+a+" b:"+b); if (a==0) { // a==0 && b>=0 answer = (long)(b*(b+1)/2); } else if (a<0) { if (b==0) { // a<0 && b==0 a = -a; answer = (long)(-a*(a+1)/2); } else if (b<0) { // a<0 && b<0 a = -a; b = -b; // consequently |a|>|b| long c = (long)(a-b); long d = (long)(b*(c+1)); long e = c*(c+1)/2; answer =

Naver Blog

프로그래머스 콜라츠 추측 - java

class Solution { public int solution(int num) { int answer = 0; int maxRepeat = 500; int repeatCount = 1; if (num == 1) { return 0; } while (repeatCount <= maxRepeat) { if (num%2 == 1) { num = (num*3) + 1; } else { // Even number num/=2; if (num == 1) { answer = repeatCount; break; } } repeatCount++; } if (repeatCount > 500) { return -1; } return answer; } } 출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges

Naver Blog

프로그래머스 나누어 떨어지는 숫자 배열 - java

import java.util.*; class Solution { public int[] solution(int[] arr, int divisor) { int[] answer = {}; ArrayList<Integer> list = new ArrayList<>(); for (int i = 0 ; i < arr.length ; i++) { if (arr[i]%divisor == 0) { list.add(arr[i]); } } if (list.size()==0) { return new int[] {-1}; } Integer[] buff = list.toArray(new Integer[0]); Arrays.sort(buff); answer = Arrays.stream(buff).mapToInt(Integer::intValue).toArray(); return answer; } } 출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/

Naver Blog

프로그래머스 제일 작은 수 제거하기 - java

class Solution { public int[] solution(int[] arr) { int[] answer = new int[arr.length-1]; int min = Integer.MAX_VALUE; for (int i = 0 ; i < arr.length ; i++) { if (arr[i] < min) { min = arr[i]; } } int j = 0; for (int i = 0; i < arr.length ; i++) { if (arr[i] != min) { answer[j] = arr[i]; j+=1; } } return answer.length == 0 ? new int[] {-1} : answer; } } 출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges

Naver Blog

내돈내산 포토비 포토프린터 후기

포토프린터를 찾던 중, 다른 리뷰들을 찾아보았는데 포토비가 가장 낫다는 의견을 보고 포토비로 바로 결정. 사이즈는 20000mAh 보조배터리보다 살짝 큰 정도다. 무게는 휴대하고 다니기에 부담없을 정도였다. (약 15년 전 어렸을 때 최초의 가정용 canon 포토프린터의 사이즈와 비교한다면 정말 엄청난 기술발전이 있었구나 하고 생각했다.) 무엇보다 배터리를 내장하고 있기 때문에 여행 중에 간단히 출력이 가능하다는 것이 엄청난 장점이다. 풀충 후 6매를 출력해봤는데, 배터리는 문제 없었다. 스펙 상 풀충 후 30장 출력이 가능하다고 한다. 사진을 인쇄해봤다. 빠른 출력시간도 물론이거니와 화질도 굉장히 맘에 들었다. 색재현율도 훌륭하다고 생각했다. 인화지를 72매만 추가로 구매했는데, 앞으로 좋은 추억 많이 출력하고 싶어졌다. 너무 적게 산게 아닌가 싶다. 그래서 포토비 인화지는 오래오래 단종 안되었으면 좋겠다. 앨범과 포토 체인도 구매해야겠다. 추천 정도: 포토비가 내 인생 두 번째

Naver Blog

프로그래머스 N으로 표현 - java

다이나믹 프로그래밍 문제 점화식 구현 문제 import java.util.*; class Solution { public int solution(int N, int number) { int ret = 0; if (N == number) { return 1; } ArrayList<HashSet<Integer>> DP = new ArrayList<>(); DP.add(0, null); for (int i = 1; i <= 8; i++) { HashSet<Integer> initSet = new HashSet<>(); DP.add(i, initSet); } for (int i = 1; i <= 8 ; i++) { // Break down the solution if (i == 1) { DP.get(1).add(N); } else if (i == 2) { DP.get(2).add(N*11); DP.get(2).add(N+N); DP.get(2).add(N-N); DP.get(2).add(N

Naver Blog

백준 00147 동전 0 - java

import java.util.*; public class Main { public static void main (String args[]) { Scanner sc = new Scanner(System.in); String line = sc.nextLine(); String[] input = line.split(" "); int coinTypes = Integer.parseInt(input[0]); int totalPrice = Integer.parseInt(input[1]); ArrayList<Integer> coinType = new ArrayList<>(); for (int i = 0 ; i < coinTypes ; i++) { String coin = sc.nextLine(); coinType.add(Integer.parseInt(coin)); } int count = 0; for (int i = coinTypes-1 ; i >= 0 ; i--) { if (totalPric

Naver Blog

백준 1931 회의실 배정 - java

import java.util.*; public class Main { public static int mMaxCount = 0; public static int mMeetingInfoNum = 0; public static void main (String args[]) { Scanner sc = new Scanner(System.in); mMeetingInfoNum = sc.nextInt(); int[][] time = new int[mMeetingInfoNum][2]; for (int i = 0; i < mMeetingInfoNum; i++) { time[i][0] = sc.nextInt(); time[i][1] = sc.nextInt(); } Arrays.sort(time, new Comparator<int[]>() { @Override public int compare(int[] o1, int[] o2) { if (o1[1] == o2[1]) { return o1[0] - o

Naver Blog

백준 11399 ATM - java

import java.util.*; public class Main { public static int mTotalTime = 0; public static Scanner sc = new Scanner(System.in); public static void main (String args[]) { int inputNum = sc.nextInt(); int[][] input = new int[inputNum][2]; for (int i = 0; i < inputNum; i++) { input[i][0] = i; input[i][1] = sc.nextInt(); } Arrays.sort(input, new Comparator<int[]>() { @Override public int compare(int[] o1, int[] o2) { return o1[1] - o2[1]; } }); for (int i = 0; i < inputNum; i++) { mTotalTime += input[i

Naver Blog

백준 1541 잃어버린 괄호 - java

import java.util.*; public class Main { public static int mSum = 0; public static Scanner sc = new Scanner(System.in); public static void main (String args[]) { String input = sc.nextLine(); String[] nums = input.split("-|\\+"); Character[] opers = new Character[nums.length-1]; int j = 0; for(int i = 0; i < input.length(); i++) { if (input.charAt(i) - '0' < 0 || input.charAt(i) - '9' > 0) { opers[j] = input.charAt(i); j++; } } j = 0; boolean minusSwitch = false; for(int i = 0; i < nums.length; i

Naver Blog

백준 13305 주유소 - java

import java.util.*; public class Main { public static long mSum = 0; public static Scanner sc = new Scanner(System.in); public static void main (String args[]) { int inputNum = sc.nextInt(); long[] distance = new long[inputNum-1]; long[] oilPrice = new long[inputNum]; long minOilPrice = Integer.MAX_VALUE; for (int i = 0; i < inputNum-1; i++) { distance[i] = sc.nextLong(); } for (int i = 0; i < inputNum; i++) { oilPrice[i] = sc.nextLong(); } for (int i = 0; i < inputNum; i++) { if (i == 0 || i ==

Naver Blog

백준 10773 제로 - java

import java.util.*; public class Main { public static void main (String args[]) { Scanner sc = new Scanner(System.in); Stack<Long> stack = new Stack<>(); int K = sc.nextInt(); for (int i = 0; i < K; i++) { Long input = sc.nextLong(); if (input == 0 && !stack.isEmpty()) { stack.pop(); } else { stack.push(input); } } long sum = 0; while( 0 < stack.size()) { sum += stack.peek(); stack.pop(); } System.out.println(sum); } }

Naver Blog

백준 9012 괄호 - java

import java.util.*; public class Main { public static void main (String args[]) { Scanner sc = new Scanner(System.in); Stack<Character> stack = new Stack<>(); int K = sc.nextInt(); sc.nextLine(); for (int i = 0; i < K; i++) { String input = sc.nextLine(); stack.clear(); int length = input.length(); boolean result = true; for (int j = 0; j < length; j++) { if (input.charAt(j) == ')') { if (stack.isEmpty()) { result = false; break; } else if (stack.peek() == '(') { stack.pop(); } } else if (input.

Naver Blog

노래방에서 부르기 좋은 노래를 추천한다면?

Ð기타 노래방에서 부르기 좋은 노래를 추천한다면? 배고프다 2017. 4. 20. 0:22 이웃추가 본문 기타 기능 From, 블로그씨 노래방에서 부르기 좋은 노래를 추천한다면? MC the MAX one love 어디에도 그대 그대 그대 그 남잔 말야 행복하지 말아요 가슴아 그만해 그대가 분다 잠시만 안녕 박효신 야생화 눈의 꽃 숨 애상 널 사랑한다 넬 기억을 걷는 시간 지구가 태양을 네 번 Stay 한계 태연 I 11:11 Fine Rain 잊어버리지마 Why 정준일 안아줘 첫 눈 플라이 투더 스카이 너를 너를 너를 가슴 아파도

Naver Blog

[리눅스 bash 스크립트] 다른 process의 출력 캡쳐

Linux [리눅스 bash 스크립트] 다른 process의 출력 캡쳐 배고프다 2017. 4. 21. 11:12 이웃추가 본문 기타 기능 리눅스에서 bash 스크립트를 작성하다가, 다른 process가 터미널에 출력하는 것을 캡쳐하는 기능이 필요하였다. 구글링 결과 아래와 같은 글을 찾았다. In bash script, how to capture stdout line by line 그리고 구현해보았는데, 잘되었다. 아래 콜백 이해를 위한 예제 코드를 컴파일하여 활용하였다. http://blog.naver.com/lovesm135/220923839460 Java - Callback 이해를 위한 간단한 예제 코드 일반적인 경우는 Caller가 Callee의 메서드를 call하는 것. 이와 다르게, Callback이란 Caller에서 구... blog.naver.com 아래가 구현해본 쉘 스크립트이다. 매우 짧아서 이해하기 편하다. #!/bin/bash comp="hello, callb

Naver Blog

언론 아닐까요..

언론 아닐까요 삭제 후 오해라고 해명한 SBS…세월호 인양 고의 지연 보도 파문 국민일보 확인하러 가기

Naver Blog

java 코드에서 sudo linux command 실행하기

Java java 코드에서 sudo linux command 실행하기 배고프다 2017. 5. 4. 5:34 이웃추가 본문 기타 기능 String[] cmd = {"/bin/bash", "-c", "echo password | sudo -S vzctl set 101 --ipdel 10.0.10.3 --save"}; Runtime.getRuntime().exec(cmd); password에 user의 password를 적어넣으면 되고, -S 뒤에 sudo로 실행할 command를 적어넣으면 된다.

Naver Blog

오버클럭 i7 [email protected]~4.3, ddr3@2133

O.C. 오버클럭 i7 [email protected]~4.3, ddr3@2133 배고프다 2017. 5. 9. 1:05 이웃추가 본문 기타 기능 http://klevv.kr/press/677 보도자료 - Klevv 4G vs Samsung 4G 가성비 대결!!! D램의 영원한 1등? 삼성전자 DDR3 4G PC3-12800 과 ESSENCORE KLEVV DDR3 4G PC3-12800 을 간단히 테스트해 보았습니다. 삼성전자의 PC3-12800는 가장 많이 사용되는 보급형 메모리중에 하나로, 뛰어난 안정성과 호환성으로 표준 메모리로 사용된 만큼 인지도가 상당히 높으 며, 오버클럭킹에서도 좋은 모습을 보이는 제품 중에 하나입니다. ESSENCORE KLEVV ?? 생소... klevv.kr http://m.blog.naver.com/chiphell6950/100192259352 아이비브릿지 i7 3770 (논K) 오버클럭 가이드 대부분의 사람들이 아이비브릿지 오버클럭을 위해서는 K버전 CPU +

Naver Blog

GTX1060 이엠텍 Super JETSTREAM 6G 오버클럭 fire strike 점수

O.C. GTX1060 이엠텍 Super JETSTREAM 6G 오버클럭 fire strike 점수 배고프다 2017. 6. 26. 2:07 이웃추가 본문 기타 기능 이엠텍 XENON 지포스 GTX1060 Super JETSTREAM D5 6GB [다나와] 이엠텍 XENON 지포스 GTX1060 Super JETSTREAM D5 6GB 최저가 480,000원 prod.danawa.com Power +5% Core Clk +135 (+150은 그래픽카드 응답없음 발생) Mem Clk + 450 (무서워서 더 안올려봄 ㅎ) 6월 말 여름 기준 최대 온도 70도(스샷의 온도는 무시하세영) 아래는 순정 점수

Naver Blog

Gigabyte AORUS GTX 1080 Ti ZEC 세팅

O.C. Gigabyte AORUS GTX 1080 Ti ZEC 세팅 배고프다 2017. 7. 6. 23:21 이웃추가 본문 기타 기능 power 80 gpu clock 110 mem clock 300 700sol/s

Naver Blog

키캡놀이! 하늘-핑크

Hardware 키캡놀이! 하늘-핑크 배고프다 2017. 10. 17. 20:55 이웃추가 본문 기타 기능 조합: 제닉스 m10tfl, 스카이디지탈 nkey 119 한글 pbt 더블샷 키캡 핑크, 스카이디지탈 nkey 37 한글 pbt 더블샷 키캡 스카이블루

Naver Blog

내 방에 TV가 없어서 KBS 수신료..

Ð컴퓨터 내 방에 TV가 없어서 KBS 수신료.. 배고프다 2018. 7. 20. 23:28 이웃추가 본문 기타 기능 내 방에 TV가 없어서 KBS 수신료를 안내고 있는게 참 다행이란 생각이 들었다. 내 소중한 수신료로 창의력 대장님이 이런 기사를 쓰게 놔둘 수는 없다. [글로벌24 이슈] 전 세계에 드리운 ‘게임 중독’의 그늘 [앵커] 여름 방학이 다가오면서 게임에 빠져드는 자녀들 때문에 걱정하는 부모님들 많으실텐데요, 서구권도 마찬가지라고 합니다. 방에 하루종일 틀어박혀 게임만 붙들고 있는 10대들 때문에 부모들의 시름은 확인하러 가기

1 2