일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 2589
- 2638
- 동적 프로그래밍
- 투어
- 1로 만들기
- 호유동
- dp
- 고모네 콩탕
- 프로그래머스
- 설탕 배달
- 양꼬치
- 완도산회
- 다이나믹 프로그래밍
- mvc
- 스프링
- 맛집 투어
- 2020 KAKAO BLIND
- 알고리즘
- BFS
- 서블릿
- 쓰레드 풀
- Servlet
- 문자열 압축
- 2839
- Spring
- 백준
- 포두부 보쌈
- 스프링 MVC
- 맛집
- HTTP API
- Today
- Total
목록분류 전체보기 (157)
프로그래밍 공방
문제 www.acmicpc.net/problem/5676 5676번: 음주 코딩 각 테스트 케이스마다 곱셈 명령의 결과를 한 줄에 모두 출력하면 된다. 출력하는 i번째 문자는 i번째 곱셈 명령의 결과이다. 양수인 경우에는 +, 음수인 경우에는 -, 영인 경우에는 0을 출력한다. www.acmicpc.net 문제해결방법 이 문제는 세그먼트 트리로 구간의 곱을 구해놓고 값을 변경시켜주면서 풀었다. 코드 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687package ..
문제 programmers.co.kr/learn/courses/30/lessons/72412
문제 www.acmicpc.net/problem/14425 14425번: 문자열 집합 첫째 줄에 문자열의 개수 N과 M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)이 주어진다. 다음 N개의 줄에는 집합 S에 포함되어 있는 문자열들이 주어진다. 다음 M개의 줄에는 검사해야 하는 문자열들이 주어 www.acmicpc.net 문제해결방법 이 문제는 두 가지 방법으로 풀었다. 1. Trie / 2. Set 코드1 Trie 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960package baekjoon; import java.io.BufferedRead..
다형성 : Polymorphism 여러가지 형태를 가질 수 있는 성질 조상 클래스 타입의 참조 변수로 자손 클래스의 인스턴스를 참조할 수 있게 한다.(반대는 불가능) 12345class TV {}class CaptionTv extends TV {} TV tv = new CaptionTv();CaptionTV ctv = new CaptionTv();cs * 둘 다 같은 타입의 인스턴스지만 참조 변수의 타입에 따라 사용할 수 있는 멤버의 개수가 달라진다. 참조 변수의 형변환 기본형과 같이 참조형도 형변환이 가능하다. (단, 서로 상속관계에 있는 클래스 사이에서 가능) 자손 -> 조상 (up-casting) : 생략 가능 조상 -> 자식 (down-casting) : 생략 불가 1234567class TV {..
네트워크 애플리케이션 개발 서로 다른 종단 시스템에서 동작하고 네트워크를 통해 서로 통신하는 프로그램을 작성하는 것 애플리케이션 구조 - 클라이언트 서버 구조 : 서버가 항상 켜져 있으면서 클라이언트라는 다른 호스트들의 요청을 받는 구조 - P2P 구조 : 피어(peer, 간헐적으로 연결된 호스트 쌍)들이 서로 직접 통신하도록 하는 구조 프로세스 간 통신 2개의 다른 종단 시스템에서 프로세스는 컴퓨터 네트워크를 통한 메시지 교환으로 서로 통신한다. 클라이언트와 서버 프로세스 - 클라이언트 : 두 프로세스 간의 통신 세션에서 통신을 초기화(다른 프로세스와 세션을 시작하려고 접속을 초기화)하는 프로세스 - 서버 : 세션을 시작하기 위해 접속을 기다리는 서버 ex) 웹(브라우저 - 클라이언트, 웹 서버 - 서..
문제 programmers.co.kr/learn/courses/30/lessons/60062 코딩테스트 연습 - 외벽 점검 레스토랑을 운영하고 있는 스카피는 레스토랑 내부가 너무 낡아 친구들과 함께 직접 리모델링 하기로 했습니다. 레스토랑이 있는 곳은 스노우타운으로 매우 추운 지역이어서 내부 공사를 하는 programmers.co.kr 문제해결방법 레스토랑이 원형 구조라는 것은 weak의 시작점에 따라 결과가 달라질 수 있다는 것을 나타낸다. 따라서 weak의 시작점을 정하고 친구들을 조합하는 모든 경우에 대하여 외벽을 점검할 수 있는지 확인하고 가능한 경우들에 대해 친구의 최소값을 구한다. 코드 123456789101112131415161718192021222324252627282930313233343..
위상 정렬 : Topological Sorting 위상 정렬은 선후 관계가 정의된 DAG(Directed Acyclic Graph, 유향 비순환 그래프)에서 꼭지점들을 선후 관계를 거스리지 않도록 나열하는 정렬이다. (대표적인 예로 선수과목 구조가 있다.) 위상 정렬은 그래프의 구조에 따라 아래와 같이 여러 개의 종류가 나올 수 있다. ( 1 - 7 - 3 - 4 - 5 - 2 | 1 - 4 - 7 - 5 - 2 - 3 | ... ) * 위상 정렬이 성립하기 위해서는 반드시 그래프에 순환이 존재하지 않아야 한다. 위상 정렬의 과정 1. 자기 자신을 가리키는 변이 없는 꼭짓점을 찾는다. 2. 찾은 꼭짓점을 출력하고 출력한 꼭짓점과 그 꼭짓점에서 출발하는 변을 삭제한다. 3. 아직 출력되지 않은 꼭짓점이 있..
문제 programmers.co.kr/learn/courses/30/lessons/72414 코딩테스트 연습 - 광고 삽입 시간을 나타내는 HH, H1, H2의 범위는 00~99, 분을 나타내는 MM, M1, M2의 범위는 00~59, 초를 나타내는 SS, S1, S2의 범위는 00~59까지 사용됩니다. 잘못된 시각은 입력으로 주어지지 않습니다. (예: 04:60:24, 11 programmers.co.kr 문제해결방법 이 문제는 전체 시간을 배열로 잡고 각 시간마다 몇 명이 듣고 있는지 다 구해준 다음에 광고 길이를 구간으로 잡고 그 구간의 합이 최대가 될 때의 시작 시간을 반환하는 문제였다. * 계속 테스트 케이스 하나가 틀렸는데 알고보니까 자료형 문제였다. 정신차리고 주의하자. 코드 12345678..
문제 www.acmicpc.net/problem/1238 1238번: 파티 첫째 줄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 10,000), X가 공백으로 구분되어 입력된다. 두 번째 줄부터 M+1번째 줄까지 i번째 도로의 시작점, 끝점, 그리고 이 도로를 지나는데 필요한 소요시간 Ti가 들어 www.acmicpc.net 문제해결방법 처음에는 다른 모든 학생들한테서 X까지의 거리를 알아내기 위해 다익스트라를 해야되는지, 플로이드 워셜을 해야되는지 고민했었다. 그런데 생각해보니까 도로를 뒤집어서 그 뒤집은 도로로 X에서 출발하는 다익스트라를 돌리면 각 학생들이 X로 오는 거리를 구할 수 있다는 걸 알아내서 그 방법으로 풀었다. 코드 12345678910111213141516171819202122..
문제 programmers.co.kr/learn/courses/30/lessons/72410 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 카카오계정개발팀에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. 네오에게 주어진 첫 업무는 새로 가 programmers.co.kr 문제해결방법 문자열을 Char 배열로 옮기고 배열을 앞에서부터 돌며 1~3단계를 처리해준다. 1단계 new_id의 모든 대문자를 대응되는 소문자로 치환합니다. 2단계 new_id에서 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.)를 제외한 모든 문자를 제거합니다. 3단계 new_id에서 마침표(.)가 2번 이상 연속된 부분을 하나의 마침표(.)로 치환합니..