본문 바로가기

728x90

전체 글

(462)
[프로그래머스] 치킨 쿠폰 힌트초기 설정:서비스 치킨의 수를 저장할 변수를 초기화합니다. (service 변수)반복문:치킨 쿠폰의 수가 10장 이상인 동안 반복합니다.서비스 치킨 계산:현재 치킨 쿠폰 수를 10으로 나누어 서비스 치킨의 수를 계산하고, 이를 service 변수에 더합니다.남은 쿠폰 계산:남은 쿠폰은 현재 치킨 쿠폰을 10으로 나눈 몫(서비스 치킨의 수)과 나머지(교환 후 남은 쿠폰)를 더한 값이 됩니다.반복 종료:치킨 쿠폰이 10장 미만이 되면 반복문을 종료하고, 최종적으로 계산된 서비스 치킨의 수를 반환합니다. 정답은 더보기 클릭더보기class Solution { public int solution(int chicken) { // 서비스 치킨의 개수를 저장할 변수 in..
[프로그래머스] 연속 부분 수열 합의 개수 코드 힌트중복을 제거하기 위해 HashSet 사용하기:HashSet은 중복된 값을 자동으로 제거해줍니다. 이를 활용해 조합의 합을 저장합니다.연속된 부분 수열을 구하는 문제:주어진 배열에서 연속된 숫자들의 합을 구하는 문제입니다. 바로 옆에 이어지는 숫자들로 조합의 합을 계산해야 합니다.모든 길이의 연속된 부분 수열을 고려:조합의 길이는 1부터 배열의 길이까지 모두 포함됩니다. 즉, 모든 가능한 연속된 부분 수열을 구해야 합니다.% 연산자를 사용하여 배열의 쉬프트 구현:원형 배열을 구현하기 위해 % 연산자를 사용합니다. 이를 통해 배열의 끝에서 다시 처음으로 돌아가는 순환 구조를 쉽게 처리할 수 있습니다. 정답은 더보기 클릭더보기import java.util.*;class Solution { // ..
[프로그래머스] 간단한 식 계산하기 코드 힌트문자열 분리: 공백을 기준으로 문자열을 분리합니다. 이를 위해 split(" ") 메소드를 사용합니다.피연산자 추출: 분리된 문자열에서 피연산자를 추출하여 정수로 변환합니다.연산자 추출: 분리된 문자열에서 연산자를 추출합니다.연산 수행: 연산자에 따라 적절한 연산을 수행하고 결과를 반환합니다.  정답은 더보기 클릭더보기class Solution { public int solution(String binomial) { // 공백을 기준으로 문자열을 분리하여 배열로 변환 String[] instruction = binomial.split(" "); // 첫 번째 피연산자를 정수로 변환 int firstOperand = Intege..
[프로그래머스] 문자열 정렬하기 (2) 코드 힌트소문자로 변환: 문자열을 소문자로 변환해야 합니다. 이를 위해 toLowerCase() 메소드를 사용합니다.정렬: 정렬은 Arrays.sort() 메소드를 사용하면 빠르게 할 수 있습니다.배열로 변환: Arrays.sort()를 사용하기 위해서는 문자열을 배열로 변환해야 합니다. 이때 split("") 또는 toCharArray()를 사용할 수 있습니다.문자열로 변환:  String.join()을 사용하여 배열을 다시 합쳐줍니다. 정답은 더보기 클릭더보기import java.util.*;class Solution { public String solution(String my_string) { // 문자열을 소문자로 변환 String[] strArr = my_stri..
[프로그래머스] 주식가격 코드 힌트2중 for문으로 풀기이 방법은 가격이 떨어지는 시점을 찾기 위해 두 번 반복문을 사용하는 방법입니다.초기화:결과를 저장할 배열 result를 prices 배열의 크기만큼 초기화합니다.모든 요소가 0으로 설정됩니다.이중 루프:첫 번째 루프는 각 가격을 순차적으로 확인합니다.두 번째 루프는 현재 가격 이후의 가격을 비교합니다.가격 하락 확인:만약 가격이 떨어지는 순간을 찾으면, 그 시점까지의 시간을 result 배열에 기록합니다.가격 유지 처리:끝까지 가격이 떨어지지 않는 경우에는 남은 시간을 result 배열에 기록합니다.Stack을 활용하여 풀기이 방법은 스택을 사용하여 가격이 떨어지는 시점을 효율적으로 찾는 방법입니다.초기화:결과 배열 result와 인덱스를 저장할 스택을 초기화합니다.가격 ..
[SQLD] 모델링 모델링의 중요성과 데이터 모델링의 이해모델링은 현실 세계의 사물이나 개념을 간단하게 도식화하는 과정입니다. 이를 통해 복잡한 시스템이나 프로세스를 명확하게 이해하고, 설계, 개발, 유지보수를 효율적으로 할 수 있습니다. 모델링을 할 때는 일관된 표기법을 사용하는 것이 중요하며, 약속되지 않은 표기법은 모델링으로 인정받지 않습니다. 이제 모델링의 핵심 개념과 데이터 모델링의 단계, 그리고 유의사항에 대해 살펴보겠습니다.모델링의 주요 특징모델링에는 추상화, 단순화, 명료화의 세 가지 주요 특징이 있습니다.추상화 (Abstraction):현실의 복잡한 사물을 중요한 특징만을 추려서 단순한 형태로 표현합니다. 예를 들어, 복잡한 건축 구조를 도식화할 때는 주요 구조물만을 강조하여 표현합니다.단순화 (Simpli..
[Spring Boot] 여러가지 사용하는 Class 보호되어 있는 글입니다.
[프로그래머스] 네트워크 코드 힌트:그래프 탐색의 필요성:각 컴퓨터를 노드로 보고, 컴퓨터 간의 연결을 간선으로 생각하면, 네트워크의 수를 찾는 문제는 그래프에서 연결 요소의 수를 찾는 문제로 볼 수 있습니다.깊이 우선 탐색(DFS) 또는 너비 우선 탐색(BFS):한 컴퓨터에서 시작해 연결된 모든 컴퓨터를 탐색하고, 이미 탐색한 컴퓨터는 다시 탐색하지 않도록 표시합니다.새로운 컴퓨터에서 탐색을 시작할 때마다 새로운 네트워크가 하나 발견됩니다.방문 여부를 기록하는 배열:배열을 사용해 각 컴퓨터가 이미 탐색된 네트워크에 포함되어 있는지를 기록합니다.정답은 더보기 클릭더보기import java.util.*;class Solution { public int solution(int n, int[][] computers) { ..

728x90