전체 글
-
[python]Algo-Greedy💢파이썬/알고리즘 공부 2021. 10. 21. 19:14
❓거스름돈 동전구하기 ✅코드 n = 1260 count = 0 # 큰 단위의 화폐부터 차례대로 확인 array = [500, 100, 50, 10] for coin in array: count += n // coin # 해당 화폐로 거슬로 줄 수 있는 동전 개수 n %= coin # 나머지 값을 다음 타켓팅 돈 으로 설정 print(count)✅문제 접근법 가장 큰 수부터 정렬을 해줘야 동전을 최소화로 사용할 수 있다! 동전은 사용할때마다 카운트에 누적시킨다 동전을 거슬러 주고 남은 돈을 다시 n에 넣어주어 반복할 수 있도록 한다! ❓1이 될때까지 위에 예시 보면 알듯이 25를 3을 이용하여 1을 만들때 횟수의 최솟값을 출력해야 한다. ✅코드 n, k = map(int, input().split()) r..
-
[Spring]🍪Cookie &🍕 SessionJava 2021. 10. 9. 21:26
➰Cookie&Session 1. Cookie와 Session이란 무엇일까? 🍪Cookie란?! ✅ Client의 정보를 Client 시스템에 저장하는 형식이다 ✅저장 데이터 타입은 문자열만 가능이다. ✅보안을 고려한 중요한 데이터는 쿠키 활용 비추 ✅생성 및 활용 💢 [생성] Cookie 변수 = new Cookie("key", "value"); 변수.setMaxAge(초단위로 설정); client 시스템에 잔존시간 설정 response.addCookie(변수); client 시스템이 전송해서 생성 💢 [활용] Cookie [] 변수 = request.getCookies(); 변수.getName() - key 반환 변수.getValue() - value 반환 일반적으로 쿠키는 이런식으로 생성하고 생성한..
-
[Spring] ➰URI TemplateJava 2021. 10. 9. 11:49
➰URI Template 💢URI Template이란 무엇일까? URI Template이란 자원을 구분하기 위한 최적의 표현법이며 URL을 동적으로 구성 가능한 기술이다. 예를 들어 아래와 같은 상황을 봐보도록 하자 #.url github/ji-myeung-Kim github/friend1 github/friend2위에 상황을 보면 github라는 고정 표현이 있고 뒤에는 어떤 아이디로 접속했냐에 따라 값이 달라지는 것을 볼 수 있다. 이럴 경우 우리는 URI Template을 이용하여 뒤에오는 가변적인 부분을 처리할 수 있다. 아래 코드로 어떻게 처리할 수 있는지 알아보자! #.code @RequestMapping("github/{userid}") public String UriT(@PathVariab..
-
[Spring]MVC-with annotation🏨Java 2021. 10. 9. 01:21
🏨Spring MVC 1. ➰주요 annotation ✅@Controller spring 기반의 사용자 정의 http처리 클래스 class 선언구 ✅@Request Mapping client가 url상에 요청하는 이름, 방식과 매핑하는 설정 개별 메소드별 선언구 ✅@ModelAttribute 메소드의 parameter로 사용 DTO가 parameter로 선언시 해당 DTo를 request 객체에 자동 저장 forward로 이동된 jsp에선 request.getAttribute()처럼 ${requestScope.dtokey.변수명} - ${requestScope.Customer.age} - ${Customer.age} ✅@ExceptionHandler 메소드 선언구 해당 메소드는 예외 처리 전담 구조 pa..
-
[Spring]💨 AOP(Aspect Oriented Programming)와 애노테이션(Annotation)Java 2021. 10. 7. 22:26
💨AOP(Aspect Oriented Programming) 💨1.AOP 사용자가 요구했던 업무족인 내용이라기보다 개발자나 관리자가 프로그램을 위해 필요한 코드들을 추가(주 업무로직X- 사용자도 모름) 객체지향보다 더 큰 범위 🔒🔑기존방식 로그를 처리하겠다 할대 직접 코드를 열여서 직접 위아래 입력하고 주석하고 풀고 이런 귀찮은 잃을 해야함 소스코드가 있는 사람만 cross-cutting해당사항 넣었다 뺄 수 있음 🔑aop로 보완 꽂아져 있지않지만 꽂아져 있는것처럼 구현 가운데 부분에 proxy 생성 위 사진 화살표로 흐름 파악 spring 사용시 더욱 더 쉽게 개발 가능 💨2. AOP 환경설정 ✅pom.xml에 필요한 library들 설치( /build 와 /project사이에 넣어준다.) org.sp..
-
👫[Spring] DI(Dependency Injection)의존성 주입 및 Annotation 사용Java 2021. 10. 7. 20:41
➰Spring DI(with Annotation) ➰DI(Depndency Injection) 종속성 주입, 번역된 단어 자체가 어려우니 부품 조립으로 생각하는게 편하다. 1.Composition has a //직접 생성 class A { private B b; public A(){ b = new B(); } } 2. Assocation has a // 직접 생성하지 않음 class A { private B b; public void setB(B b){ this.b = b; } } ✅일체형- 붙박인 형태로 사용자 입장에서 A라는 객체를 만들면 그 안에 부품을 잘 모름 A a = new A ✅조립형- 결합력이 훨씬 낮아지고 쉽게 부품을 갈아낄 수 있어 업데이트 할때 느슨하게 바꾸는게 더 선호하는 방식 B ..
-
playdataAlgo shortestPath(최단경로)🚀파이썬/알고리즘 공부 2021. 9. 14. 23:42
playdataAlgo shortestPath(최단경로)🚀 최단경로 플로이드 아샬 알고리즘- 모든 노드를 방문하는 최단 경로 다익스트라 알고리즘 - 특정 노드에서 다른 노드까지의 최단 경로 플로이드 와샬 ✅0번에서 탐색 비용배열 0 1 2 3 4 5 0 7 maxsize maxsize 3 10 방문배열 0 1 2 3 4 5 True False False False True False 0에서 시작할 때 갈 수 있는 노드는 4번, 1번, 5번 노드이다. 여기서 이동할대 최소비용으로 이동할 수 있는 4번 노드를 선택한다. ✅4번에서 탐색 비용배열 0 1 2 3 4 5 0 7,2 -> 2 maxsize 11 3 10 방문배열 0 1 2 3 4 5 True True False False True False ✅1번..
-
playdataAlgo[백준]풍선터트리기🎈 , [프로그래머스]카펫📜파이썬/알고리즘 공부 2021. 9. 6. 00:55
playdataAlgo [백준]풍선터트리기🎈,[프로그래머스]카펫📜 🎈풍선터트리기 ✅1.문제 N개의 풍선이 있다. 각 풍선 안에는 -N부터 N까지의 수가 적혀있는 종이가 들어 있다. 이 풍선들을 다음과 같은 규칙으로 터뜨린다. 우선, 제일 처음에는 1번 풍선을 터뜨린다. 다음에는 풍선 안에 있는 종이를 꺼내어 그 종이에 적혀있는 값만큼 이동하여 다음 풍선을 터뜨린다. 양수가 적혀 있을 경우에는 오른쪽으로, 음수가 적혀 있을 때는 왼쪽으로 이동한다. 풍선은 원형으로 놓여 있다고 생각한다. 즉, 1번 풍선의 왼쪽에 N번 풍선이 있고, N번 풍선의 오른쪽에 1번 풍선이 있는 것이다. 이동할 때에는 이미 터진 풍선은 빼고 생각한다. 예를 들어 다섯 개의 풍선 안에 차례로 3, 2, 1, -3, -1이 적혀 있었다..