전체 글

전체 글

    프로그래머스 Level 2 자바 귤 고르기 연습문제

    프로그래머스 Level 2 자바 귤 고르기 연습문제

    오랜만에 자바를 이용해 풀었습니다! 좋은 풀이 같지는 않습니다만 제가 아는 한에서 어떻게든 풀어 봤습니다 참고가 된다면 좋겠습니다! 문제를 풀기 전에 문제 설명에서 헤깔렸던 부분이 있었습니다 귤의 크기들 마다 갯수가 서로 같아야하는 줄 알았습니다! 그냥 갯수만 채우면 되더라구요 ㅎㅎ 시작합니다! 우선 트리맵을 만들어 줍니다 그리고 tangerine 배열에서 크기별로 갯수를 정리 해줍니다 그럼 크기 1은 몇개 2는 몇개 요런 식으로 맵에 저장이 되겠죠? 그리고 또 하나 트리맵을 만들어 줍니다 이번엔 거꾸로 정렬 해서요 그리고 while문으로 이전 트리맵의 길이가 0이 될 때까지 poll을 해줍니다. 하나씩 빼는 거죠 이번엔 귤의 갯수를 키값으로 저장 해줍니다 5개 짜리 귤 크기 는 3개 4개 짜리는 3개 ..

    프로그래머스 Level 2 자바스크립트 구명보트 탐욕법(Greedy)

    프로그래머스 Level 2 자바스크립트 구명보트 탐욕법(Greedy)

    제가 제일 싫어하는 탐욕법 문젭니다 하하 두번의 시도 끝에 풀었습니다!! 처음에는 자바스크립트 배열의 pop과 shift를 사용했지만 생각보다 자원을 많이 소비한다는 것을 깨달았기에 인덱스 값을 외부로 할당시켜 풀었습니다 코드 보시죠!! 우선 저 같은 경우엔 큰 순서로 정렬을 해주었습니다 그리고 현재 가장 무거운 인덱스인 he 그리고 가장 가벼운 인덱스인 li 를 만들어 줍니다 배열 가장 끝이 가장 가벼울 테니 길이에서 하나 빼주면 되겠죠? 그리고 while문을 열어서 가장 무거운 것에 가장 가벼운 것을 합쳤을 때 limit 보다 무겁다면 he만 증가 시켜주고 answer += 1 아니라면 he는 증가, li는 다운, answer += 1 시켜줍니다! 그리고 반복마다 li에서 he를 뺀 값이 0 미만! ..

    디자인 패턴 - MVC1 과 MVC2 의 차이

    디자인 패턴 - MVC1 과 MVC2 의 차이

    Model : 백그라운드에서 동작, 사용자가 원하는 데이터나 정보를 제공 해준다 View : 사용자의 요청을 토대로 화면으로 출력한다 Controller : 사용자의 요청 처리. 전체적인 흐름을 제어한다 MVC 모델 1 특징 : Controller 와 View 가 합쳐져 있다 흔히 JSP가 View 와 Controller 의 역할을 모두 한다 JAVA 코드와 HTML, CSS가 섞여버려, 소스가 복잡해지고 유지보수가 힘들어질 수 있다 MVC 모델 2 특징 : Controller 와 View 가 분리 된 구조 JSP를 사용하는 경우, Servlet이 Controller 역할을 대신한다 MVC1의 단점을 보완하지만, 개발 시간이 오래 걸릴 수 있다

    개인 서버 구축 테스트 중 - 통신사 모뎀 설정

    개요 : ASUS공유기의 DDNS를 통해 우분투 PC로 접속 시, 통신사 모뎀 페이지가 먼저 뜨는 현상 해결 방법 : admin으로 로그인 후 통신사 공유기의 WAN 모드를 브릿지로 변경 admin 암호의 경우 모뎀 별 유추 방법을 따름

    프로그래머스 Level 1 자바스크립트 개인정보 수집 유효기간 2023 KAKAO BLIND RECRUITMENT

    프로그래머스 Level 1 자바스크립트 개인정보 수집 유효기간 2023 KAKAO BLIND RECRUITMENT

    오랜만에 쓰는 풀이 글 입니다... 정답률에 비해서 쉬웠던 그리고 점수도 소금 같이 짠 문젭니다 왜 1점만 주지 허허 시작 합니다! 저는 제가 아주 좋아하는 split을 사용해서 풀어 봤습니다. 일단은 전처리 입니다 오늘 날짜를 분리해서 담아주고 코드와 기간도 서로 분리 해줍니다 그리고 for문을 열어서 하나 하나 처리 해줍니다 배열 하나하나 날짜를 다시 정리 해주고 코드도 따줍니다 그리고 코드에 맞는 기간을 num에 저장 해줍니다 그리고 마지막으로 오늘 날짜와 기록된 날짜를 비교해서 일 수로 모두 더해줍니다 이 문제는 모든 달이 28일로 이루어진 세계이기 때문에 쉽습니다 그리고 마지막으로 num에 28을 곱한 것과 같거나 크면 현재 i 값에 1을 더해서 푸쉬 해주면 짜잔! 끝입니다 빠이용 아래는 제가 ..

    DI란 무엇 인가에 대하여

    DI란? - Dependency Injection 의 준말 의존성 주입 객체간의 의존성을 스프링 컨테이너가 자동으로 연결해주는 것 개발자가 직접 객체를 생성하는 것이 아닌, 외부에서 생성하여 주입 시켜주는 방식 외부에서 두객체 간의 관계를 결정해주는 디자인 패턴 인터페이스를 사이에 둠으로서 클래스 레벨에서는 의존관계가 고정되지 않도록 하고, 런타임 시에 관계를 동적으로 주입, 유연성을 확보하고 결합도를 낮출 수 있게 해준다 public class House { private Desk desk; } 상기 코드에서 House 클래스는 Desk 클래스를 의존한다 다만 이 상태에선 클래스끼리 강하게 결합되어 있다는 것이 문제가 되며, 객체가 아닌 클래스 끼리의 관계이기에, 우리가 추구하는 객체지향과는 거리가 있..