본문 바로가기

전체 글195

#23971 ZOAC 4 문제   코드fun main() { val (h, w, n, m) = readln().split(' ').map { it.toLong() } val height = (h + n) / (n + 1) val width = (w + m) / (m + 1) println(width * height)} 풀이표를 그려서 자리를 채워보다가 대략적인 방향을 잡았다.문제에서는 가로 m칸 또는 세로 n칸 이라고 적혀있어서 이것이 문제의 요점인가 싶었다.근데 결국 가로 m칸 그리고 세로 n칸 으로 계산하는 것이 최대 수용 인원 수를 구하는 방법이다.   이런 식으로 대각선에 인원을 배치할 수 없기 때문이다  만약 h, w, n, m = 3, 3, 1, 1 라고 가정했을 때, (2, 3)에 인원을 배치시.. 2024. 7. 22.
StringBuilder String과 StringBuilder의 차이점에 대해 알아보자 Stringstring은 내부에 value값이 final로 선언되어있는 불변 객체따라서 문자열을 변경해야하는 경우엔 기존에 참조하고 있던 곳의 값을 변경하는 것이 아니라, 변경된 문자열에 대한 string을 새로 생성하고 이 문자열로 참조를 바꾸는 식이렇게 되면 연산이 끝난 후 "hello"가 남게 된다.문자열 변경 연산이 많아질수록 메모리 관리에 좋지 않다. StringBuilderStringBuilder는 가변 객체String처럼 참조를 변경하는 식이 아니라, 참조되어있는 객체를 변경하는 식 따라서 문자열을 변경하는 작업이 많은 경우 StringBuilder를 사용하는 것이 메모리 효율 측면에서 더 좋음   StringBuilder 사용.. 2024. 7. 20.
#1655 가운데를 말해요 문제 코드import java.io.BufferedReaderimport java.io.InputStreamReaderimport java.util.PriorityQueuefun main() { val br = BufferedReader(InputStreamReader(System.`in`)) val sb = StringBuilder() val n = br.readLine().toInt() val minHeap = PriorityQueue() val maxHeap = PriorityQueue(reverseOrder()) for (i in 0.. 1) { minHeap.offer(maxHeap.poll()) } else if (minHeap... 2024. 7. 20.
Git gui fork 오류 해결 방법 노션에 작성해둔 글을 블로그로 옮겨쓰는 중 터미널로 git을 사용하다가 너무 조작이 어려워서 gui를 사용하기로 했다.예전에 소스트리는 사용해봤는데, 이번에 같은 프로젝트 팀원분께서 fork를 추천해주셔서 fork에 정착했다ㅎㅎ 사용해보니까 매우 편한 것 같음소스트리를 많이 사용해본건 아니지만 fork가 더 직관적이고 깔끔한 느낌,, 처음에 프로젝트를 연결하려고 하니까 오류가 나서 해결 방법을 공유하고자 한다! ** 깃허브 계정은 연결되어있는 상태로 진행하였음  오류 상황gui로 프로젝트에 접근하려고 하니까 자꾸 이런식으로 오류가 발생했다 해결 방법1. 터미널 실행 2. 입력ssh-keygen키 저장 위치 설정저는 그냥 기본 위치에 저장했습니다~ (그냥 엔터비밀번호 설정개인적으로 사용할 비밀번호 3. 입.. 2024. 7. 19.
#12865 평범한 배낭 코딩테스트를 위해 알고리즘을 다시 공부하려고 한다!기존에 c++로 진행했던걸 kotlin으로 변경해서 다시 풀어보려고 한다 문제 코드import kotlin.math.maxfun main() { val (n, k) = readln().split(' ').map { it.toInt() } val w = IntArray(n + 1) val v = IntArray(n + 1) val dp = Array(n + 1) { IntArray(k + 1) } for (i in 1..n) { val (weight, value) = readln().split(" ").map { it.toInt() } w[i] = weight; v[i] = value } for.. 2024. 7. 19.
[git stash] 변경사항 일시적으로 저장하기 노션에 작성해둔 글을 블로그로 옮겨쓰는 중 코드 리뷰를 해야 할 때나, 다른 브랜치에서 작업해야 할 때, git checkout을 하는데이때, 내가 현재까지 진행중인 내용을 checkout한 브랜치로 끌고 가더라.. 이걸 임시적으로 저장하는 방법을 찾아봤다git stash를 사용하면 현재까지 변경한 내용들을 임시적으로 저장할 수 있다!즉, 따로 커밋하지 않더라도 변경사항을 저장한 다음 다른 작업을 진행하고, 작업이 끝나면 저장해뒀던 내용을 다시 적용할 수 있음 방법1. 변경 사항 저장git stash save "stash message"여기서 메시지는 선택사항임! 굳이 작성하지 않아도 된다 2. 변경사항이 stash에 저장되었는지 확인하는 방법git stash list 3. 저장된 변경 사항을 다시 적용.. 2024. 7. 16.