전체 글 썸네일형 리스트형 1448 삼각형 만들기 처음에 모든 조합을 구한 다음에 풀었더니 시간초과가 났다. 그럴 필요가 없는 문제였다. 그냥 정렬 후 가장 큰 것부터 확인하면 된다. #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define xx first #define yy second #define all(x) (x).begin(), (x).end() using namespace std; using i64 = long long int; using ii = pair; using iis = pair; using ii64 = p.. 더보기 2103 직교다각형 복원 음 하나의 직교사각형을 만드는 줄 알았는데 아니었구나. 알고보니 각 꼭짓점이 주어졌다. 이제 길이를 어떻게 구하냐.... 한 삼일 계속 고민하다가 밥 먹다가 갑자기 떠올랐다. 한 위치를 기준으로 점을 정렬한 다음 길이를 구하면 되겠구나 예를 들어 사각형이 저렇게 있다고 하면 (중복이 없다고 생각하자 귀찮,,) 특정 y를 기준으로 x를 정렬한 다음에 x의 길이를 구하면 되겠다 싶었다. 그런데 이렇게 겹치는 경우가 생기면 어떡하지?? 싶었는데 겹치는 도형을 보면 저 중간 점 (노랑과 빨강이 겹치는 점)은 꼭짓점이 아니여서 입력으로 들어오지 않을 것이다. 악악 어려워 아무튼 해결함 #include #include #include #include #include #include #include #include .. 더보기 16114 화살표 연산자 계속 틀려서 직접 코드까지 짜봤는데 그래도 못 찾았다.. 결국 다른 분 도움 받아서 해결했다. 예외 케이스 처리 1. n이 1이고 x가 양수인 경우 -> 마이너스로 생각한다 (-3) 2. n이 1이고 z가 음수인 경우 -> - (-3)으로 생각해 양수가 된다. 이 두 케이스를 빼먹어서 틀렸다. #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define xx first #define yy second #define all(x) (x).begin(), (x).end() using namespace .. 더보기 16565 N포커 주간 연습때 무조건 골드 두 문제만 해치운다고 마음먹고 고민했는데 엄... 음..... 아무리해도 못 풀겠다. 그래서 머리 굴리다가 결국 다른 사람 풀이를 참고했다. 으! 수학이잖아 포함 배제의 원리를 쓴다고 한다. 찾아보니 전부 더하고 교집합 빼고 더하고 하는 그거인 것 같다. 그래서 한 종류를 4가지 모은 경우 - 두 종류를 4가지 모은 경우 + 3종류 - 4종류 ... 이렇게 푼다. n개를 뽑아 i 종류를 4가지 모은 경우의 수는 조합으로 구할 수 있다. 13종류 중 i개를 골라야 하니 13Ci 나머지 카드를 뽑는 경우는 4i개를 모아야 하니 나머지 n - 4i개는 아무렇게나 들어가도 된다. 52 - 4i C n - 4i와 같다. 그래서 경우의 수는 13Ci * 52 - 4i C n - 4i #in.. 더보기 12887 경로 게임 엇 최소 경로 구한 다음, 전체 칸 - (검은 칸 + 경로) 빼면 될 것 같았다. 최소 경로는 무조건 직진, 검은색 만나면 옆으로 비켜선 다음 직진하게 구현했다. 출발 위치가 두 가지가 있으니깐 두 가지 모든 경우 구해서 최소인 거 구했다. 쉬웠음 ~.~ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define xx first #define yy second #define all(x) (x).begin(), (x).end() using namespace std; using i64 = long .. 더보기 제 3회 소프트콘 소프트콘 등 긁어주기 대회~ 운빨로 아이스크림 걸렸으면 좋겠다. 대회 시작 처음에 문제 다 훑어봤다. 훑어보다가 F번 문제를 이해 못해서 한 30분 들여다보고 있었다. 처음에는 전부 print 찍으면 되는 거 아닌가? 생각했는데 명령어의 길이가 더 짧구나.. 깨달아서 고민했다. 근데도 모르겠다. 반복문을 한번만 그것도 마지막에 쓸 수 있는데 어떻게 풀 수 있지?? 하다가 이제 스코어보드 보고 다른 사람들 많이 푼 문제부터 풀었다. 대략 한 시간 A번부터 봤다. 그냥 제곱으로 건너면서 횟수 세면 되는거 아닌가? 풀었는데 틀렸다. 짝수만 통과했다. 엥 뭐지?? 왜지?? 고민하다가 나중에 돌아오기로 하고 넘어갔다. 다음으로 D번을 많이 푼 것 같길래 D번으로 넘어갔다. 헝... 문제 이해를 잘 못했다. 변화가.. 더보기 11558 The Game of Death 이거 전에 풀어서 맞춘 것 같은데??? 왜 또 푸는 것 같지 #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define xx first #define yy second #define all(x) (x).begin(), (x).end() using namespace std; using i64 = long long int; using ii = pair; using iis = pair; using ii64 = pair; using iii = tuple; void solve() { int n; scan.. 더보기 10158 개미 처음에는 그냥 그대로 구현하면 되지 않을까? 싶었는데 t가 엄청 큰 수라 터지고. 그 다음은 반복되는 게 있을테니 그걸 구해볼까 싶었는데 이것도 4만 * 4만이라 터진다.. 결국 고민하다가 다른 사람 풀이를 찾아봤다. 와.... x축과 y축을 나눠서 생각하는구나. 신기하다. #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define xx first #define yy second #define all(x) (x).begin(), (x).end() using namespace std; using .. 더보기 이전 1 ··· 12 13 14 15 16 17 18 ··· 79 다음