분류 전체보기

·Algorithm (PS)
https://www.acmicpc.net/problem/20207 20207번: 달력 수현이는 일년의 날짜가 1일부터 365일로 표시되어있는 달력을 가지고있다. 수현이는 너무나도 계획적인 사람이라 올 해 일정을 모두 계획해서 달력에 표시해놨다. 여름이 거의 끝나가자 장 www.acmicpc.net 풀이 Greedy 유형이라는 힌트가 나와있다 가로길이의 경우 calendar[i]를 하나씩 확인하면서 일정이 있을 때마다 계속 하나씩 더해주면 된다 (calendar[i] != 0 이면 하나씩 더함) 세로길이의 경우 현재 범위에서 일정이 겹치는 수들 중 max값으로 갱신한다. 이 예시에서는 2일에서 9일사이의 최대 세로 길이는 3칸이다. 그리고 10일째 될때 일정이 없는데, 이때 저장된 row값과 col 값을..
Python 의 divmod() 함수는 몫과 나머지를 구하는 함수이다. def modify(n, k): # k진수로 변경하기 result = '' while n > 0: n, mod = divmod(n, k) # 몫과 나머지를 구함 result += str(mod) return result[::-1]
·Algorithm (PS)
https://www.acmicpc.net/problem/17836 17836번: 공주님을 구해라! 용사는 마왕이 숨겨놓은 공주님을 구하기 위해 (N, M) 크기의 성 입구 (1,1)으로 들어왔다. 마왕은 용사가 공주를 찾지 못하도록 성의 여러 군데 마법 벽을 세워놓았다. 용사는 현재의 가지고 있는 www.acmicpc.net bfs 문제인데 칼이라는 조건이 추가되었다 칼이 있을 때와 칼이 없을 때 최단거리가 달라진다 ..!!!! 이걸 어떻게 처리하느냐가 관건인데, 우선 칼을 가지고 있으면 굉장히 문제가 간단해진다 if array[x][y] == 2: # knife min_time = visited[x][y]-1 + n-1-x + m-1-y # 칼까지의 최단거리 + 칼에서부터 공주까지 거리 칼까지의 최단..
·Algorithm (PS)
https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr from collections import defaultdict from collections import OrderedDict def solution(id_list, report, k): answer = [] id_dict = OrderedDict() count = defaultdict(int) for id in id_list: id_dict[id] = [] for data in report: ..
·Algorithm (PS)
https://www.acmicpc.net/problem/20056 20056번: 마법사 상어와 파이어볼 첫째 줄에 N, M, K가 주어진다. 둘째 줄부터 M개의 줄에 파이어볼의 정보가 한 줄에 하나씩 주어진다. 파이어볼의 정보는 다섯 정수 ri, ci, mi, si, di로 이루어져 있다. 서로 다른 두 파이어볼의 위치 www.acmicpc.net 삼성의 상어 시리즈.. https://sinclairstudio.tistory.com/202 백준 21610 마법사 상어와 비바라기 (python) https://www.acmicpc.net/problem/21610 21610번: 마법사 상어와 비바라기 마법사 상어는 파이어볼, 토네이도, 파이어스톰, 물복사버그 마법을 할 수 있다. 오늘 새로 배운 마법은 비..
디자인 패턴 : 모듈 간의 관계 및 인터페이스를 설계할 때 참조할 수 있는 전형적인 해결방식 또는 예제 생성패턴, 구조패턴, 행위패턴 세가지로 나뉜다 !! 디자인 패턴의 구성 요소 : 문제 및 배경 + 사례 + 샘플 코드 1. 생성 패턴 - 클래스나 객체의 생성과 참조 과정을 정의하는 패턴 추상 팩토리 구체적인 클래스에 의존하지 않고, 인터페이스를 통해 서로 연관, 의존하는 객체들의 그룹으로 생성하여 추상적으로 표현함 빌더 작게 분리된 인스턴스를 조합하여 객체를 생성함 동일한 객체 생성에서도 서로 다른 결과를 생성할 수 있음 팩토리 메소드 객체 생성을 서브 클래스에서 처리하도록 분리하여 캡슐화한 패턴 상위 클래스에서 인터페이스만 정의하고 실제 생성은 서브 클래스가 담당함 프로토타입 원본 객체를 복제하는 ..
소프트웨어 아키텍쳐 1) 모듈화 시스템의 기능을 모듈 단위로 나누는 것 2) 추상화 문제의 전체적이고 포괄적인 개념을 설계한 후 차례로 세분화하여 구체화시켜 나가는 것 3) 단계적 분해 문제를 상위의 중요 개념으로부터 하위의 개념으로 구체화 시키는 분할 기법 4) 정보은닉 모듈 내부에 포함된 절차와 자료들의 정보가 갖추어져 다른 모듈이 접근하거나 번경하기 못하도록 하는 기법 5) 상위 설계와 하위 설계 - 상위 설계 : 아키텍처 설계, 예비 설계 (구조, DB, 인터페이스) - 하위 설계 : 모듈 설계, 상세 설계 (컴포넌트, 자료구조, 알고리즘) 6) 설계 과정 설계 목표 설정 -> 시스템 타입 결정 -> 아키텍쳐 패턴 적용 -> 서브 시스템 구체화 -> 검토 7) 협약에 의한 설계 컴포넌트를 설계할 ..
·Algorithm (PS)
웹 서버의 기능 HTTP/HTTPS : 브라우저로부터 요청을 받아 응답할 때 사용되는 프로토콜 통신기록 : 처리한 요청들을 로그 파일로 기록하는 기능 정적 파일 관리 : HTML/CSS/이미지 등의 정적 파일들을 저장하고 관리하는 기능 대역폭 제한 : 네트워크 트래픽의 포화를 방지하기 위해 응답 속도를 제한하는 기능 가상 호스팅 : 하나의 서버로 여러개의 도메인 이름을 연결하는 기능 인증 : 사용자가 합법적인 사용자인지를 확인하는 기능
minjiwoo
'분류 전체보기' 카테고리의 글 목록 (50 Page)