일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
- 백준#BOJ#8012#한동이는영업사원
- 백준#BOJ#12865#평범한배낭
- 백준#BOJ#14501#퇴사#브루트포스
- 백준#boj#16932#모양만들기
- 백준#BOJ#1939#중량제한
- 백준#boj#12755
- 백준#BOJ#2615#오목
- Today
- Total
목록전체 글 (249)
순간을 성실히, 화려함보단 꾸준함을
www.acmicpc.net/problem/2666 2666번: 벽장문의 이동 첫 번째 줄에 벽장의 개수를 나타내는 3보다 크고 20보다 작거나 같은 하나의 정수, 두 번째 줄에 초기에 열려있는 두 개의 벽장을 나타내는 두 개의 정수, 그리고 세 번째 줄에는 사용할 벽장들 www.acmicpc.net 문제 : n개의 벽이 주어지고 단2개만 빼고 전부 벽장문이 존재합니다. 이 벽장문을 한칸씩 양옆중 한방향으로 밀어 원하는 인덱스의 벽에 접근하면 됩니다. 이때 벽장문의 이동의 최소값을 구하는게 문제입니다. 해설: 먼저 어떻게 문제에 접근할까 부터 생각을 해보았습니다. 벽을 차례대로 사용할 번호를 배열에 담고 순차적으로 접근해야 함을 첫번째로 고려하였습니다. 그러면 사용하고자 하는 벽장과 가장 가까이에 벽장문..
www.acmicpc.net/problem/20292 20292번: 컨설팅 입력으로 최대 $10\ 000$줄의 명령어가 주어지며, WRITE문, READ문, EXIT문으로 구성된다. EXIT문은 마지막에 한 번만 주어진다. 각 명령어는 다음과 같이 정의되며, 메모리 이름은 $1$–$3$글자의 알파벳 www.acmicpc.net 문제 : 지문에 써저있는 조건에 맞게 wait를 추가하여 출력하게끔 해라. 해설 : 최대 입력 문장이 10000 인 걸 고려해서 O(n^2)은 불안하여 O(nlogn) 의 시간 복잡도를 이용하여 문제를 해결하였습니다. 더불어 C++ 언어를 사용하시는 분께선 반드시 fastio를 사용해주세요. (요즘엔 선택이 아닌 필수라고 하더라구요) 소스: #include using namespa..

이 오류가 뜨는 이유는 mysql에서 user에게 권한을 주지 않아서 발생하는 오류이다. 방법은 간단하다. 권한을 주면된다.(필자는 mysql work-brench를 이용할 것) 1. Administration -> User and Privileges 를 선택한다. 2. 사용하고자 하는 user를 선택한 후 Administrative Roles 를 선택 그리고 DBA를 체크하면 모든게 체크된다. Apply를 선택하면 끝
www.acmicpc.net/problem/2459 2459번: 철사 자르기 가로 줄과 세로 줄의 개수가 각각 N인 바둑판 모양이 있다. 여기에서 인접한 두 가로줄 또는 두 세로줄 사이의 거리는 1이다. 또한, 가로줄과 세로줄이 만나서 생기는 교차점은 왼쪽에서 x번째 세 www.acmicpc.net 문제 : 철사를 판에 맞게 따라서 쭉 놓는다. 이때 격자에서만 꺾을 수 있다.(꺽기는 격자의 좌표는 순차적이다). 철사를 자를 l 이 주어지고 l 과 l+1 사이를 자른다. 최대의 길이를 가진 철사를 구해라 풀이 : 철사가 잘리는 좌표만 잘 처리하여 하나씩 저장해 주자. x n >> k; v.resize(k + 2); for (ll i = 1; i > v[i].first >> v[i].second; cin >..
www.acmicpc.net/problem/2651 2651번: 자동차경주대회 전국 자동차 경주 대회가 매년 열리고 있다. 이 대회에서는 출발지점부터 도착지점까지 거리가 워낙 멀기 때문에 경주 도중에 각 자동차는 정비소를 방문하여 정비를 받아야 한다. 정비소들은 www.acmicpc.net 문제 : 도착지점까지 정비소에 들려 최소의 시간으로 도착할 수 있는 케이스를 구해라 풀이 : LIS의 응용버전 1)각 정비소간 거리를 prefix 로 담아준다. 2)O(n^2)의 시간복잡도를 활용하여 정비소간 차이가 D(정비소에 들렸을때 최대로 갈 수 있는 거리) 이하이고 시간이 더 적게 걸릴때 업데이트, 또한 지금까지 거쳐온 정비소의 번호를 기록해 둔다. 3)지나온 자취를 역추적 + 데이터 추가로 코드 수정(int-..

※대략적인 설치 같은 건 다른 블로그를 통해서 따라하시는 걸 추천드립니다. 정리 잘 되어있는 블로그들 많습니당. 1.프로젝트를 생성해 줍니다. [Web] - [Dynamic Web Project] 를 선택해 줍니다. 2.서블릿을 만들어 줍니다. [src] - [오른쪽 마우스키 클릭] - [servlet] 선택 (package 와 class name은 본인들 마음대루~) 3.JDBC Driver(mysql-connector-java-8.0.22,jar)를 lib 폴더에 대입해줍니다 4. Driver, url, (mysql)유저 아이디, (mysql)유저 패스워드 설정 및 연결 package com.servlet; import java.io.IOException; import java.io.PrintWrit..
www.acmicpc.net/problem/2020 2020번: 부분 염기서열 길이 n(1≤n≤1,000)인 염기서열이 있다. 이는 A, G, C, T로 구성되어 있는 문자열이라 생각할 수 있다. 주어진 염기서열의 부분 염기서열은, 염기서열을 문자열로 생각했을 때 부분문자열과 같이 정 www.acmicpc.net 문제 : 문자열이 주어지고 동일한 부분 문자열의 빈도가 m 이상일때 조건에 맞게 정렬해라. 그리고 k 번째 문자열을 출력해라. 해설: 너무 어려움,,,혼자 힘으로 못풀었습니다.(메모리 제한 때문에 ㅠㅠ) 해결 과정은 BFS를 푸는 것 처럼 풀 수 있습니다. 1)입력 문자열(str)의 각 문자를 동일한 문자끼리 모읍니다.(map) 2)그리고 나서 큐를 선언하고 vector를 push 해줍니다. 3..
codeforces.com/contest/1428/problem/C Problem - C - Codeforces codeforces.com 문제 : 문자열이 주어지고 문자열중 'AB'와 'BB'가 존재한다면 증발한다. 이 작업을 반복하여 실행할 때 문자열을 최소로 만들어서 길이를 구하는 문제이다. //참고로 백준문제 : 문자열 폭발 과 동일한 문제이다. 해설 : stack을 이용하면 된다. 하나씩 넣고 조건에 맞는 문자열이라면 pop 해주는 식으로. #include using namespace std; using ll = long long; int arr[2][300010]; void solve(); int main() { ios::sync_with_stdio(false); cin.tie(0); int ..
codeforces.com/contest/1428/problem/B Problem - B - Codeforces codeforces.com 문제 : n개의 간선의 정보가 주어진다. - : 양옆으로 갈 수 있는 간선 > : i 에서 (i+1)%n 으로 갈 수 있는 간선 ) 만으로 이루어져 있거나 (-,> t; while (t--) solv..
codeforces.com/contest/1428/problem/A Problem - A - Codeforces codeforces.com 문제 : 쥐가 상자를 끌고 다닌다. 이때 항상 쥐는 상자의 인접한 위치에만 있을 수 있고 상자를 끌을 수 있다. 쥐는 1단위로 움직일 수 있다. 이때 상자의 초기 위치(x1,y1)이 주어지고 이를 목적 위치(x2,y2)에 옮기기 위해 최소로 움직이는 횟수를 구하면 된다. 예시) (1,1) - > (2,2) 로 옮긴다고 해보자 1) 상자 (1,1) , 쥐(2,1) //init 2) 상자(2,1) , 쥐(3,1) 3) 상자(2,1) , 쥐(3,2) 4) 상자(2,1) , 쥐(2,2) 5) 상자(2,2) , 쥐(3,2) //end 그러면 4번의 움직임에 원하는 위치에 상자..
codeforces.com/contest/1427/problem/B Problem - B - Codeforces codeforces.com 문제 : 문자열 s가 주어지고 W는 이김,L는 진거다. 이때 연속적으로 이긴다면 +2포인트를 얻고, 진다면 +0포인트를 얻는다. 또한, 연속된 W의 문자열 중에 제일 첫번째 W는 +1 포인트만 얻는다. 그리고 m번만큼 L->W로 바꿀 수 있다. 이때 최대로 얻을 수 있는 점수를 구해라 해설: m번만큼 L->W를 바꿔서 얻을 수 있는 경우의 수는 3가지다 1) W와 W 사이에 존재하는 L을 변경하였을때 => +3 포인트를 얻을 수 있다. (WLW ->WWW : +2,+1) 2) W의 뒤에 존재하는 L을 변경하였을때 => +2 포인트를 얻을 수 있다. (WLL - >WW..
codeforces.com/contest/1427/problem/A Problem - A - Codeforces codeforces.com 문제 : 배열 a 가 주어지고 a를 재배열해서 b 배열을 만든다. 이때 조건은 처음부터 순차적으로 더했을때 0이 생기면 안되게 만들어야 된다. 해설 : 1) a의 원소들을 전부 더했을때 0이면 "NO" 2) a의 원소들을 전부 더했을때 0이 아니면 "YES" 2-1)이때 다 더했을때 0보다 크면 내림차순으로 정렬해주고 2-2)다 더했을때 0보다 작으면 오름차순으로 정렬해 주면 된다. =>이렇게 해주면 중간에 0이 발생하는 구간이 생기지 않는다. #include using namespace std; using ll = long long; void solve(); boo..