본문 바로가기

Algorithm/BOJ211

[BOJ]16968번: 차량 번호판 1 (c++) https://www.acmicpc.net/problem/16968 16968번: 차량 번호판 1 00부터 99까지 총 100가지 중에서 00, 11, 22, 33, 44, 55, 66, 77, 88, 99가 불가능하다. www.acmicpc.net 방법 1: 그리디 #include using namespace std; int get_next(char bfr, char now) { int next = 0; if (now == 'c') { next = 26; } else { next = 10; } // 앞 문자와 중복되는 경우 제외 if (bfr == now) { --next; } return next; } int main() { ios_base::sync_with_stdio(0); cin.tie(0); .. 2020. 7. 17.
[BOJ]1561번: 놀이 공원 (c++) https://www.acmicpc.net/problem/1561 1561번: 놀이 공원 문제 N명의 아이들이 한 줄로 줄을 서서 놀이공원에서 1인승 놀이기구를 기다리고 있다. 이 놀이공원에는 총 M종류의 1인승 놀이기구가 있으며, 1번부터 M번까지 번호가 매겨져 있다. 모든 놀이기 www.acmicpc.net #include #include #include using namespace std; typedef long long ll; const ll N_MAX = 2000000000LL; const ll T_MAX = 30; ll N, M; // 주어진 time시간까지 놀이기구를 탄 아이들 수 구하기 ll cnt_passed(vector &rides, ll time) { // 0분에는 모든 놀이기구가 비.. 2020. 7. 17.
[BOJ]1300번: K번째 수 (c++) https://www.acmicpc.net/problem/1300 1300번: K번째 수 세준이는 크기가 N×N인 배열 A를 만들었다. 배열에 들어있는 수 A[i][j] = i×j 이다. 이 수를 일차원 배열 B에 넣으면 B의 크기는 N×N이 된다. B를 오름차순 정렬했을 때, B[k]를 구해보자. 배열 A와 B�� www.acmicpc.net 이분탐색 #include #include using namespace std; // 두 수의 곱이 int범위를 넘을 수 있기 때문에 long long 형으로 선언 long long N, K; // num보다 더 작은 수의 개수 구하기 long long count_smaller(long long num) { // 두 수가 [1, N] 범위에 있을 동안 반복문 lon.. 2020. 7. 16.
[BOJ]2022번: 사다리 (c++) https://www.acmicpc.net/problem/2022 2022번: 사다리 문제 아래의 그림과 같이 높은 빌딩 사이를 따라 좁은 길이 나있다. 두 개의 사다리가 있는데 길이가 x인 사다리는 오른쪽 빌딩의 아래를 받침대로 하여 왼쪽 빌딩에 기대져 있고 길이가 y인 사�� www.acmicpc.net 실수 이분탐색 #include #include #include using namespace std; // 계산시 오차 범위 const double EPS = 1e-6; double x, y, c; bool check(double w) { // 피타고라스 법칙 double h_L = sqrt(x * x - w * w); double h_R = sqrt(y * y - w * w); // 닮음비 이용하여 .. 2020. 7. 16.