[BOJ/8201] Pilots, c++
·
DEV/PS
www.acmicpc.net/problem/8201 8201번: Pilots In the first line of the standard input two integers are given, t and n (0 ≤ t ≤ 2,000,000,000, 1 ≤ n ≤ 3,000,000), separated by a single space, denoting the tolerance level and the number of yoke's position measurements taken. The second line give www.acmicpc.net 한줄 후기 : 영어 해석은 papago.. 신촌 알고리즘 중급 캠프 덱 DP 강좌 필수 문제였다. 사실 필수 문제를 다 읽어봤는데 (다이아는 보지도 않음) 내가 ..
PS용 비트 연산자(bit masking) 정리
·
DEV/PS
내가 보려고 정리 이 내용은 신촌 연합 알고리즘 캠프 강사님 말씀이다. - 집합 관리{0,1,2,3,4,5} 에서 부분집합 {0,1,4} 를 비트로 관리할 때 -> 0 1 0 0 1 1 로 관리 (5,4,3,2,1,0) 순서로 있으면 1, 없으면 0 교집합 -> & 연산자, 합집합 -> | 연산자 사용 -i 번째 비트 구하기 1. x & (1 > i) & 1ex) 같은 예제에서 0 1 0 1 1 을 3만큼 right shift 해준 값과 & 연산을 취하면, 0 0 0 0 1 즉, 1과 & 연산을 취하게 된다.그럼 전체 결과가 1인지 0인지로 판단 가능하다. - i번째 비트를 0/1로 설정하기1. 1로 설정하기 x | (1
[BOJ/1516] 게임 개발, c++
·
DEV/PS
www.acmicpc.net/problem/1516 1516번: 게임 개발 첫째 줄에 건물의 종류 수 N(1 ≤ N ≤ 500)이 주어진다. 다음 N개의 줄에는 각 건물을 짓는데 걸리는 시간과 그 건물을 짓기 위해 먼저 지어져야 하는 건물들의 번호가 주어진다. 건물의 번호는 1부 www.acmicpc.net 한줄 후기 : solved ac class 5를 따기 위한 눈물 겨운 여정.. 문제를 읽으면서 건물 짓는 순서가 주어지길래 위상정렬인 것 같다고 생각하고 풀었다. //AC //BOJ 1516 게임 개발 #include #include #include using namespace std; int ind[501]; int ans[501]; int c[501]; vector v[501]; void topo..
[1520] 내리막 길, c++
·
DEV/PS
[1520] 내리막 길 www.acmicpc.net/problem/1520 1520번: 내리막 길 여행을 떠난 세준이는 지도를 하나 구하였다. 이 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 한 칸은 한 지점을 나타내는데 각 칸에는 그 지점의 높이가 쓰여 있으 www.acmicpc.net 한줄 후기 : 난 오마이걸이 제일 좋아 지혜가 풀어보고 싶다해서 시작 정답률 ^^,, 지혜는 항상 어려운 문제만 고른다~ //AC #include using namespace std; int n,m; int arr[501][501]; long long dp[501][501]; long long way(int i, int j){ if(i == (n-1) && j ==(m-1)){ return 1..
[14501] 퇴사, c++
·
DEV/PS
[14501] 퇴사 www.acmicpc.net/problem/14501 14501번: 퇴사 첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다. www.acmicpc.net 한줄 후기 : 내가 dp를 보자마자 풀기 보다 오마이걸 지호 만나서 친해지기가 빠를듯 퇴사는 알고스 과제에서 한 번 풀어보려 시도했었다가 어려워서 안 푼 문제다. 정답률이 꽤 높은 편이라 셋이서 도전 ^^ 나는 DP 문제랑 정말 안맞는 것 같아. #include #include using namespace std; int p[16]; int t[16]; int dp[16]; int main(){ int n; int day; cin >> n; for(int i=1; i
[11048] 이동하기, c++
·
DEV/PS
[11048] 이동하기 www.acmicpc.net/problem/11048 11048번: 이동하기 준규는 N×M 크기의 미로에 갇혀있다. 미로는 1×1크기의 방으로 나누어져 있고, 각 방에는 사탕이 놓여져 있다. 미로의 가장 왼쪽 윗 방은 (1, 1)이고, 가장 오른쪽 아랫 방은 (N, M)이다. 준규는 www.acmicpc.net 한줄 후기 : ㅋㅋㅋㅋdp 극혐 포인트는 대각선은 사실 생각할 필요가 없다는 것 대각선으로 갈 바엔 가로 한번 세로 한번 가는게 더 이득임 캔디를 더 많이 모을 수 있으니까 #include using namespace std; int miro[1001][1001]; int dp[1001][1001]; int main(){ int n, m; cin >> n >> m; for(..
[2156] 포도주 시식, c++
·
DEV/PS
[2156] 포도주 시식 ​ https://www.acmicpc.net/problem/2156 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규 www.acmicpc.net 한줄 후기 : 후에 이 문제는 알고리즘 수업 과제로.. 사실 계단 오르기랑 비슷해 보여서 풀었는데 좀 다르더라 그래서 좀 헤맸음. #include using namespace std; int main(){ int n; int arr[10000]; int dp[10000]; scanf("%d", &n); for(int i=0; i
[2579] 계단 오르기, c++
·
DEV/PS
[2579] 계단 오르기 www.acmicpc.net/problem/2579 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 한줄 후기 : 우리집 계단은 너무 높아 #include #include using namespace std; int main(){ int arr[301]; int dp[301]; int n; cin >> n; for(int i=1; i
[11403] 경로 찾기, c++
·
DEV/PS
[11403] 경로 찾기 www.acmicpc.net/problem/11403 11403번: 경로 찾기 가중치 없는 방향 그래프 G가 주어졌을 때, 모든 정점 (i, j)에 대해서, i에서 j로 가는 경로가 있는지 없는지 구하는 프로그램을 작성하시오. www.acmicpc.net 막간을 이용해 풀었던 마지막 문제 이것도 진짜 기본적인 그래프 문제처럼 보인다. 함정이 있었음 ㅋㄷ #include #include #include using namespace std; int arr[101][101]={0}; int n; void bfs(int start){ queue q; int visit[101]={0}; q.push(start); while(!q.empty()){ int x = q.front(); q.po..