a, b 의 대소관계가 정해져 있지 않다는 점...! 값이 같은 경우를 따로 빼고 그 외에는 for문을 돌리려고 해도 a..b 에서 성립이 안돼서 결괏값이 0이 나온다. a가 큰 경우, b 가 큰 경우 각각 조건을 만들 수는 있지만 너무 길어져서 그렇게 만들기 싫은데 다른 방법 없을까? 생각해봐도 모르겠어서 그냥 If 조건문에 넣었다...ㅜㅜ 내 풀이 class Solution { fun solution(a: Int, b: Int): Long { var answer: Long = 0 if (a-b == 0) { answer = a.toLong() } else if (a-b < 0) { for(i in a..b){ answer += i.toLong() } } else { for(i in b..a){ ans..
전체 글
🔥*Domain model 이랑 DTO 개념이 잘 안잡힌다. 숙련 강의를 다 듣고 복습해보면 괜찮을까? web application 요구사항 다시 확인유저 혹은 Frontend Application의 요청을 처리하고, 적절한 응답을 줄 수 있어야 합니다.예외 처리를 할 수 있고, 예외가 발생했을 때 적절한 응답을 줄 수 있어야 합니다.인증과 인가 처리를 할 수 있어야 합니다.비즈니스 로직을 처리할 수 있어야 합니다.Transaction 관리 전략이 있어야 합니다.스토리지 및 다른 외부 시스템과 통신할 수 있어야 합니다. 어제는 Controller 단을 작성하여 요청을 처리하고 응답을 주는 것을 구현했다. 오늘은 Service Layer 를 작성하여 비즈니스 로직 구현, 트랜잭션 경계 설정, 예외에 대한 처..
하샤드 수 : 각 자릿수의 합으로 나누어지는 양의 정수 처음 코드class Solution { fun solution(x: Int): Boolean { var answer = true var x: Int = x var xs: Int = 0 while(x > 0){ xs += (x %10) x /= 10 println(xs) println(x) } if (x % xs == 0) { answer = true } else { answer = false } return answer } } 테스트 3, 4 에서 결괏값이 다르게 나온다. 출력한 값은 맞게 나오는데 왜 false 로 나와야할게 true 로 나오는 걸까 IF 구문 넣기 전에 x 값이 10으로 몽땅 나눠서 0인 상태로 IF 구문에 들어가기 때문에 결괏값..
숙련 수업 목표기획을 이해하고 파악하고 설계하기 1 기획 및 설계DDD 기반 기획 전략적 설계 Ubiquitous Language / Actor / Domain Event / Command / Policy / External System / Hotspot Aggregate : 비즈니스 로직 수행을 위한 객체의 집합 (주문 aggregate > 배송정보, 결제정보 domain model) Bounded context : Actor, Domain Event, Command 를 고려한 하나의 집합 전술적 설계 Data 정의 User - id / email / password / nickname / role API (Application Programming Interface)Application : 고유한 기..
모르겠다...!! 저번에 Long 타입의 숫자를 역순으로 배치해서 배열로 리턴하라는 건 된다. 근데 배열이 아닌 정수를 어떻게 정렬하지?? 컬렉션으로 만들어서 정렬한다 쳐도 그걸 어떻게 다시 정수로 리턴하지? 컬렉션이 아닌 Long 이나 Int 를 어떻게 정렬하지? 다른 사람 풀이 class Solution { fun solution(n: Long): Long = String(n.toString().toCharArray().sortedArrayDescending()).toLong() } Long -> String -> CharArray -> 정렬 -> String -> Long toCharArray() : 문자열이 개별적인 Char 요소로 분리되어 배열로 만들어짐 sortedArrayDescending(..
[코드 피드백] 0. Lv5까지 완벽한 코드를 잘 작성해주셨네요, 정말 잘하셨습니다. 1. 클래스와 클래스상속에 대해서 완벽히 이해하셨습니다. 2. coffeeMenu(), drinkMenu()에서 Food자식클래스로 새로운 인스턴스를 만드는 만든 이유가 궁금합니다. 전역변수로 선언한 foods에 이미 동일한 값이 있고, 해당 값을 사용해 중복코드를 줄일 수 있을 것 같아요. 3. Food의 메서드를 자식클래스들에서 모두 동일하게 사용하고있는데요. 자식클래스마다 특별히 다른 구현이 없다면, 부모클래스에서 구현해 사용하는게 좋아보입니다. [Git 피드백] - 코드 컷밋을 잘 남기려 노력하셨네요: 훌륭합니다. 커밋메시지만 보고도 다른 동료들이 업무 진행과정을 쉽게 알 수 있도록 습관화해보세요 [종합 피드백]..
고대하던 Spring 주차 시작~~JDK 설치에서 조금 막혔지만 강의자료보면서 차근차근 공부했다. 어렵다는 말을 너무 많이 들어서 겁부터 먹고 시작했는데 아직 실전을 해보지 않아서그런가 나름 재밌다. 그렇다고 쉽다는 소리는 절대 아니다 🥲 입문/숙련 학습 목표 SQL 쿼리 이해, 작성 controller service repositary 이해, CRUD 작성 JPA 기본구성 이해, 관계 설정 이해 Spring : Java/Kotlin 기반의 Application Framework Framework : Caller, 틀 Library : Callee, 도구의 집합 Spring boot : Plumbing 을 손쉽게 해주는 도구 웹 생태계 1세대 - 완성된 html/css 로드 2세대 - Ajax , 서버에..
제곱근/제곱 구하기 Double 형이나 Float 형이어야 한다. import Kotlin.math.* var a = 25 var answer = sqrt(a) var answer2 = answer.pow(2) 첫 시도 import kotlin.math.* class Solution { fun solution(n: Long): Long { var x = sqrt(n.toDouble()) var answer : Long = 0 if ( x > 0 ) { answer = (x + 1).pow(2).toLong() } else { answer = -1 } return answer } } 제곱근이 양의 정수가 아닌 경우가 반환이 안된다. 왜 그럴까? x 는 n 을 Double 형으로 변환한 다음 구한 제곱근이고..
갑자기 cpu 사용량이 100까지 치솟아서 그거 해결하느라 한나절 보내 그 뒤엔 메모리 기본 사용량이 6기가나 돼서 왜 이러나 심각해지고 아니 16기가에 돌리는 거라곤 크롬이랑 인텔리제이뿐인데 메모리 사용량이 11기가가 말이 되냐구 온도도 터져나갈려고 하고 얘 산 지 이제 1년인데 정리에 정리하고 프로그램 제거까지 했는데도 제자리 걸음이라 진짜 어쩌나 싶다....아무리 봐도 정상이 아닌데 오늘 프로그래머스 문제 1개 풀고 복습하고 강의 본 것 말곤 뭐 하나 제대로 못했다ㅜㅜ...이 놈의 노트북 뭐가 문제야 진짜
내 풀이 class Solution { fun solution(n: Long): ArrayList { var answer = arrayListOf() var x = n while(x > 0){ var a :Int = (x % 10).toInt() answer.add(a) x /= 10 } return answer } } 다른 사람 풀이 class Solution { fun solution(n: Long): IntArray { return n.toString().reversed().map { it.toString().toInt() }.toIntArray() } } 처음 보는 것들이 나왔다. .reversed() .map{} : 각 원소를 원하는 형태로 변환해서 새 컬렉션을 만든다. n.toString()...