일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 자바 소인수분해
- 외계행성의 나이 자바
- 스프링 부트 배너 설정
- 배열 순환
- stringbuilder란
- 자바 합성수 찾기
- spring boot 배너 설정
- string과 stringbuilder의 차이점
- 오블완
- string과 stringbuilder의 차이
- 배열 순환 자바
- 개미 군단 자바
- 경우의 수 자바
- string과 stringbuilder
- 모스부호(1) 자바
- 프로그래머스 공 던지기 게임
- 티스토리챌린지
- 프로그래머스
- 펙토리얼
- string과 stringbuilder 성능 차이
- 숨어있는 숫자의 덧셈 (1) 자바
- 자바 팩토리얼
- 접속 url 출력
- 왓챠피디아 클론 코딩
- 스프링부트 의존성 설정
- 스프링 부트 프로젝트 세팅
- 배열 순환 문제 공식
- string과 stringbuilder 성능 최적화
- 프로그래머스 문자열 정렬하기(1)
- 소인수분해 구하는 공식
- Today
- Total
목록분류 전체보기 (244)
여름 언덕에서 배운 것
class Solution { public int solution(int n) { int answer = 0; for(int i=1;i=3){ return true; } } return false; }}
공던지기 문제를 풀다가 지피티가 비슷한 유형의 문제를 풀 때 이 방식을 활용해보라고 조언 해줌 원형(순환) 구조를 다룰 때 많이 쓰이는 패턴🟢 "현재 위치에서 일정한 간격으로 이동하는 순환 구조" 공식👉 (현재 위치 + 이동할 칸 수) % 배열 길이 이 공식을 적용하면:배열 끝을 넘어가면 자동으로 처음으로 돌아오고배열 안에서 적절한 위치를 찾아줍니다.🔹 이 공식을 쓰는 대표적인 문제들공 던지기 (한 칸 건너뛰기)index = (index + 2) % numbers.length;원형 큐 (Circular Queue)에서 다음 위치 찾기 rear = (rear + 1) % queue.length;보드 게임(말판 이동)에서 N칸씩 이동하는 경우 newPosition = (currentPosition +..

n개의 구슬중 m개를 뽑는 경우의 수를 구하라 ! 공식은 다음과 같다.관건은 팩토리얼을 어떻게 구현할 것인가 ! class Solution { public int solution(int balls, int share) { return combination(balls,share); } private int combination(int balls, int share) { int answer = factorial(balls)/(factorial(share)*factorial(balls-share)); return answer; } private int factorial(int num) { int result =1; ..

1. String은 불변(Immutable) 객체String answer = ""; answer += "0"; answer += "5"; answer += "2"; 위와 같은 코드를 실행하면 "0", "05", "052" 문자열이 만들어지는데,이때 기존 문자열을 변경하는 것이 아니라 새로운 String 객체를 계속 생성한다.즉, "0" → "05" → "052" 이렇게 세 개의 새로운 String 객체가 생성되고,기존 객체는 사용되지 않으므로 불필요한 메모리 할당과 해제가 발생이 과정에서 GC(Garbage Collector)가 불필요한 객체를 수거하는 작업도 필요하기 때문에, 성능이 저하될 수 있다. 2. StringBuilder는 가변(Mutable) 객체 StringBuilder answer = n..
class Solution { public String solution(String rsp) { String answer = ""; String[]rspArray = rsp.split(""); for(String s : rspArray){ switch(s){ case "2" : answer+="0"; break; case "0" : answer+="5"; break; case "5" : answer+="2"; break; } ..
import java.util.*;class Solution { public String solution(String letter) { Map morseMap = new HashMap(); String[] morse ={".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."}; char c = 'a'; for(String s : morse){ morseMap.put(s,String.valueOf(c++..
어려웠음..class Solution { public int solution(int n) { int answer = 0; for(int i=1; i*i1️⃣ i * i 우리는 어떤 숫자 n의 약수를 찾고 싶어.그런데 모든 약수는 짝을 이룬다!즉, a * b = n인 (a, b) 약수 쌍이 존재해.예를 들어, n = 20이라면:1 * 202 * 104 * 5(5 * 4 부터는 중복이 시작됨!)(10 * 2, 20 * 1도 앞에서 이미 나왔어!)💡 즉, 약수를 찾을 때 절반만 찾으면 돼!반대쪽 약수는 자동으로 알 수 있거든 2️⃣ 왜 i * i 어떤 숫자 n이 있을 때, 그 숫자의 약수 중 최소 하나는 반드시 √n 이하야!즉, i를 1부터 √n까지만 확인하면, 반대 약수(n..
import java.util.*;class Solution { public int[] solution(int[] emergency) { int[] answer = new int[emergency.length]; int[] copyArray = Arrays.copyOf(emergency,emergency.length); Arrays.sort(copyArray); Map ranking = new HashMap(); for(int i=0;iArrays.copyOf랑 sort 이용 !