목록전체 글 (192)
Lewis's Tech Keep
자바 자료형은 두 가지로 나뉘어 진다. 1. Primitive Type (원시 타입) byte 8bits -2^7 ~ 2^7-1 (-128 ~ 127) short 16bits -2^15 ~ 2^15-1 (-32768 ~ 32767) int 32bits -2^31 ~ 2^31-1 (-2147483648 ~ 2147483647) long 64bits -2^63 ~ 2^63-1 (-9223372036854775808 ~ 9223372036854775807) float 32bits 0x0.000002P-126f ~ 0x1.fffffeP+127f double 64bits 0x0.0000000000001P-1022 ~ 0x1.fffffffffffffP+1023 char 16bits \u0000 ~ \uffff (0..
자바는 Cross Platform 인가? 에 대한 대답 - Yes and No - 왜냐하면 자바는 JVM 위에서 올라가는 프로그램인데 이 JVM이 MAC OS, LINUX, WINDOWS 등에 깔려야 Cross Platform으로 돌아가기 때문이다.
- bfs로 풀려고 시도했으나 - m이 500 으로 크므로 bfs는 최악의 경우에 시간초과가 난다. - 실패 -> dp로 시도해야 함 더보기 import java.util.*; class Point { int x; int y; String dir; public Point(int x, int y, String dir) { this.x = x; this.y = y; this.dir = dir; } public String getDir() { return dir; } public boolean canMove(int x, int y, int m, int n) { return x >=0 && y >= 0 && x < m && y < n; } public boolean isGoal(int m, int n) { re..
- 패키지 : 연관된 클래스들끼리 묶는 기법 패키지 2종류 자바 기본 (빌트 인) 패키지 java.~~ 으로 시작하는 패키지 커스텀(user-defined) 패키지 패키지의 목적 최대 목적 : 클래스 이름 충돌 방지 가능 ex) Java.util.ABC && com.lewis.ABC (클래스 이름이 같지만 사용이 가능해진다.) - 빌드 및 실행 빌드 시 cmd javac -d 컴파일 하면 .class 컴파일 된 파일이 나옴 -> 여기 안에는 바이트 코드가 들어있음. 실행 시 cmd java -classpath 실행 클래스에는 main 함수가 필요함 (JAVA에서 실행 시 main 함수는 약속과 같은 존재 실행 클래스 이름으로 그냥 ABC가 아닌 com.lewis.ABC 와 같은 패키지 이름을 포함해야 함..
참고: programmers.co.kr/learn/courses/30/lessons/60059 코딩테스트 연습 - 자물쇠와 열쇠 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [[1, 1, 1], [1, 1, 0], [1, 0, 1]] true programmers.co.kr - key를 움직이는 부분이 잘 안 돼서 결국 풀이를 보고 풀었다. - 도움받은 링크 : jellyinghead.tistory.com/28 - 구현 문제 - key와 lock의 길이가 다른 점에 유의 - lock 과 key를 비교하기 위해서는 key.length * 2 + map.length 길이의 map을 생성 해줘서 - key를 한칸씩 움직이며 ((0, 0)~ (key.length * 2 + map.length -..
- 틀린 답 - 틀린 답입니다. - 틀린 이유 : 규칙에 넣는 특수 문자 패턴을 기준으로 생각하면 예외를 깔끔하게 나눌 수 있었을 텐데 문구 전체로 생각해서 중간에 나오는 예외들이 너무 많아졌다. - 현재 코드에서 안되는 반례 : ( "XcXbXcX" -> "X XX X") 더보기 import java.util.*; class Solution { private boolean isLowerCase(char c) { return c-'a' >= 0 && c-'z' = 0 && c-'Z'
참고 : programmers.co.kr/learn/courses/30/lessons/68646 코딩테스트 연습 - 풍선 터트리기 [-16,27,65,-2,58,-92,-71,-68,-61,-33] 6 programmers.co.kr - 풀이 보고 푼 문제 - 일반적 로직 구현 문제 - ex) [1,2,3] 의 경우 : 양 끝인 1,3은 무조건 가능하다 *(오른쪽 끝일 경우 : 왼쪽 끝에서 오른쪽 마지막 전까지 작은 숫자를 선택(큰 풍선 터트리기는 무한대로 가능) 마지막에 숫자가 크던 작던 오른쪽 끝 숫자 선택 가능, 왜냐하면 작은 것을 한번 터트릴 수 있는 기회가 남아 있기 때문) *(왼쪽 끝일 경우 : 오른쪽 끝에서 왼쪽 마지막 전까지 작은 숫자를 선택(큰 풍선 터트리기는 무한대로 가능) 마지막에 숫..
참고 : www.acmicpc.net/problem/2098 2098번: 외판원 순회 첫째 줄에 도시의 수 N이 주어진다. (2 ≤ N ≤ 16) 다음 N개의 줄에는 비용 행렬이 주어진다. 각 행렬의 성분은 1,000,000 이하의 양의 정수이며, 갈 수 없는 경우는 0이 주어진다. W[i][j]는 도시 i에서 j www.acmicpc.net - dp문제 - 답 보고 풀었다.. - dp + 비트마스크 문제 - ex) n= 4일 때 bit : 1111 (15) 를 모든 정점을 방문했다고 생각 - dp[node][visit] 일 때의 최소값을 구해주면 된다. (for로 모든 노드에서 출발했을 때 dfs로 탐색) 더보기 import java.io.*; import java.util.Arrays; import ..