blues_coding_log
[프로그래머스 Lv.0] 연속된 수의 합
Java/프로그래머스 2023. 6. 27. 20:59

문제링크 https://school.programmers.co.kr/learn/challenges/training?order=recent&languages=java 코딩 기초 트레이닝 | 프로그래머스 스쿨 프로그래밍 언어를 처음 접하거나 프로그래밍 언어에 익숙해지고 싶다면? 코딩 역량을 탄탄하게 길러주는 코딩 기초 트레이닝으로 차근차근 코딩에 대한 기초 감각을 길러 보세요. school.programmers.co.kr 문제설명 제한사항 입출력 예 풀이 num을 항의 개수로 생각하고, total을 등차수열의 합으로 생각한다. 공차는 연속된 수이므로 1이다. 첫째항을 구하면 되는데 이 것은 등차수열의 합 공식을 이용한다. 위의 식을 변형하면 첫째항 a를 구하는 식은 다음과 같다. // 첫번째 항 구하기 (등..

[프로그래머스 Lv.0] 옹알이(1)
Java/프로그래머스 2023. 6. 27. 20:51

문제링크 https://school.programmers.co.kr/learn/challenges/training?order=recent&languages=java 코딩 기초 트레이닝 | 프로그래머스 스쿨 프로그래밍 언어를 처음 접하거나 프로그래밍 언어에 익숙해지고 싶다면? 코딩 역량을 탄탄하게 길러주는 코딩 기초 트레이닝으로 차근차근 코딩에 대한 기초 감각을 길러 보세요. school.programmers.co.kr 문제설명 제한사항 입출력 예 풀이 replace 메서드를 활용하여 머쓱이의 조카가 구사할 수 있는 발음을 찾아서 "1" 로 바꾼다. 구사할 수 있는 발음은 총 4개이고 최대 한 번씩만 등장하므로 전부 바꾸는 경우는 "1111"이 된다. 즉, 문자열을 모두 바꾸었을 때 바꾼 문자열이 "111..

[Java] 제네릭(Generic)
Java/Java 정리 2023. 6. 10. 18:23

제네릭 (Generic)이란? 제네릭이란 클래스 내부에서 사용할 데이터 타입을 외부에서 지정하는 기법을 의미한다. 다음 코드를 보면, class Person{ public T info; } public class GenericDemo { public static void main(String[] args) { Person p1 = new Person(); Person p2 = new Person(); } } 여기서 차이점은 각각의 인스턴스를 생성할 때 사용한 사이에 어떤 데이터 타입을 사용했는가이다. class Person{ public T info; } 여기서 info라는 필드는 T라는 데이터 타입을 갖는다. 여기서 T라는 데이터 타입은 Person이라는 클래스 옆에 안에 지정이 되어있고, 이 T라는 ..

[Java] static
Java/Java 정리 2023. 6. 9. 10:55

static public static void main(String[] args) { } 메소드를 선언할 때 나오는 static은 어떤 경우에는 붙이고 어떤 경우에는 붙이지 않는 경우가 있다. 결과부터 정리하면 다음과 같다. class method에서는 static을 붙인다. instance method에서는 static을 붙이지 않는다. 다음 코드의 예에서 그 차이를 명확히 알 수 있을 것이다. Class Blue { public void a() { System.out.println("A") } } public class InstanceMethod { public static void main(String[] args) { Blue b = new Blue(); b.a() } } a()라는 메소드는 밑에..

[Java] 향상된 for 문
Java/Java 정리 2023. 6. 8. 21:32

for문에서의 콜론(:)이 나왔을 때 자바에서 for문의 기본 구조는 다음과 같다 for("초기화";"조건식";"증감식") { "조건식이 true이면 실행되는 로직" } 하지만 다른 소스코드들을 보면 자주 다음과 같은 구조가 나온다. for(Object obj : obj2) {} for(A : B) {} 여기서 for문을 향상된 for문이라 하고 향상된 for문의 실행 방식은 B에서 차례대로 객체를 꺼내서 A에 넣는다는 의미이다. B에서 더이상 꺼낼 객체가 없다면 반복문은 실행이 종료된다. 다음 예제를 보자. class Solution { public static void main(String[] args) { int[][] queries = {{0,3},{1,2},{1,4}}; for (int[] qu..