본문 바로가기

전체 글223

[알고리즘 문제풀이] 프로그래머스 - 멀쩡한 사각형 / JAVA(자바) https://programmers.co.kr/learn/courses/30/lessons/62048 코딩테스트 연습 - 멀쩡한 사각형 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 programmers.co.kr /** 1. 가로와 세로의 최소 공약수를 찾기(유클리드 호제법 사용) 2. 공약수로 나눈 가로와 세로의 직사각형이 공약수만큼 있음 3. 가로와 세로 직사각형에서 사용불가능한 사각형의 개수는 (가로+세로-공약수) 4. 전체개수 - 사용불가능한 사각형의 개수(가로+세로-공약수) **/ class Solution { public long s.. 2022. 3. 11.
[Java] 정규식(Reualar Expression), 정규표현식(Regex) 정규식이란 정규식은 텍스트 데이터 중 원하는 조건과 일치하는 문자열을 찾아내기 위해 사용하는 것으로, 미리 정의된 기호와 문자를 이용해서 작성한 문자열을 말한다. 정규식 사용법 java.util.regex.* 을 사용한다. 패턴을 만들어두고, 해당 패턴과 일치하는 지를 확인한다. import java.util.regex.*;// Pattern과 Matcher가 속한 패키지 class RegularEx1 { public static void main(String[] args) { String pattern = "c[a-z]*"; //c로 시작하고 a~z사이의 단어가 없거나 1개이상 있을수도 있음. String val = "count"; boolean regex = Pattern.matches(pattern.. 2022. 3. 9.
[알고리즘 문제풀이] 프로그래머스 - 삼각 달팽이 / JAVA(자바) https://programmers.co.kr/learn/courses/30/lessons/68645 코딩테스트 연습 - 삼각 달팽이 5 [1,2,12,3,13,11,4,14,15,10,5,6,7,8,9] 6 [1,2,15,3,16,14,4,17,21,13,5,18,19,20,12,6,7,8,9,10,11] programmers.co.kr 리팩토링 코드 /** 1. n*n배열 생성(최종 정답 배열은 n*(n+1)/2) 2. 높이 증가하면서 0이거나 배열안이면 +1씩 증가된 숫자 넣기 3. 그다음 가로방향 증가(0이거나 배열안이면) 4. 가로 -1 높이 -1 하면서 움직이기 5. 2~4번 반복하며 진행 **/ class Solution { public int[] solution(int n) { int[][.. 2022. 3. 9.
[Java] Objects 클래스 Objects클래스 object클래스의 보조 클래스로 모든 메서드가 'static'이다. isNull(), notNull(), requireNonNull() isNull()과 notNull()은 해당 객체가 null인지 아닌지를 boolean값으로 반환한다. requireNonNull()은 해당 객체가 널이면, NullPointerException을 발생시킨다. 두번째 매개변수로 지정하는 문자열은 예외 메시지가 된다. void setName(String name){ if(name == null){ throw new NullPointerException("name must not be null."); } this.name = name; } 변경 후 void setName(String name){ this... 2022. 3. 8.
[Java] 래퍼(wrapper) 클래스 래퍼클래스란 기본형(primitive type)변수를 객체로 다룰 수 있게 한 클래스이다. 기본형 타입을 객체로 다뤄야할 필요가 있을 때 쓰인다. // 예시(Integer) public final class Integer extends Number implements Comparable{ ... private int value; ... } 래퍼 클래스들은 객체생성 시 생성자의 인자로 주어진 각 자료형에 알맞은 값을 내부적으로 저장하고 있고, 관련된 여러 메서드가 정의되어있다. class WrapperEx1 { public static void main(String[] args) { Integer i = new Integer.valueOf(100); // 기존 new Integer(숫자) 는 Depreca.. 2022. 3. 8.
[알고리즘 문제풀이] 프로그래머스 - n진수게임 / JAVA(자바) https://programmers.co.kr/learn/courses/30/lessons/17687 코딩테스트 연습 - [3차] n진수 게임 N진수 게임 튜브가 활동하는 코딩 동아리에서는 전통적으로 해오는 게임이 있다. 이 게임은 여러 사람이 둥글게 앉아서 숫자를 하나씩 차례대로 말하는 게임인데, 규칙은 다음과 같다. 숫자를 0 programmers.co.kr /** 1. t개를 고를때까지 돌 수 있을 만큼 숫자를 n진수로 변환 2. 그중에서 p번마다 고르기 3. 반환 **/ import java.util.*; class Solution { public String solution(int n, int t, int m, int p) { StringBuilder sb = new StringBuilder().. 2022. 3. 8.