본문 바로가기

C++/Atcoder, Arena 기록

(18)
Meta Hacker Cup 2023 (종료) 친구 소개로 처음 참여해봄 https://www.facebook.com/codingcompetitions/hacker-cup Meta Hacker Cup www.facebook.com 다른 온라인 저지 사이트들이나 경쟁 프로그래밍 사이트랑 다르게 제출이 좀 까다롭다 input 파일을 받아서 output 파일을 생성하고 소스코드랑 output 파일을 사이트에 제출하는 방식이다 https://www.facebook.com/codingcompetitions/hacker-cup/2023/practice-round/problems/A1 Problem A1: Cheeseburger Corollary 1 | Meta Hacker Cup - 2023 - Practice Round www.facebook.com #inc..
solved.ac Grand Arena #2 · Arena #2 / 3솔(2144) 백준과 solved ac 사이트가 힘을 합쳐 경쟁적 프로그래밍 컨텐츠가 생겼다 문제가 한국어로 출제되고, 백준 스타일의 문제에 익숙하므로 쉬울 줄 알았으나 글쎄요,,,,,,,,,,, 총평 : 1. 나는 경쟁적 프로그래밍을 잘 못하며 잘 하기 위해 태그가리기와 업솔빙을 많이 해야 함 2. 문제가 난이도순으로 정렬되어 있지 않아 다소 까다롭지만 스코어보드를 보면서 하면 됨 3. 풀이에 대한 증명(수학적/논리적)도 연습이 필요할 것 같다. C번 풀면서 느낌 4. 어렵지만 Atcoder보다는 친숙하고 할만하며, 업솔빙도 더 열심히 하게 될 것 같다 https://solved.ac/en/arena/2/editorial solved.ac 알고리즘 문제해결 학습의 이정표 🚩 Baekjoon Online Judge 문..
AtCoder Beginner Contest 310 후기 (ABC 310 3솔) /// 앳코더 잠시 중단 업솔빙 제대로 안하고 맨날 3솔따리 4솔따리 해서는 민트에 절대 못 갈 것 같다. E를 안정적으로 풀어낼 수 있을 때까진 수련이 필요할 것 같아 앳코더는 당분간 중단한다. 수련법 : 백준 골3~플5 그래프/다익/uf/TSP/자료구조 문제풀이 (정수론이랑 기하랑 dp도 많이 나오지만 코딩테스트엔 그리 많이 안나오니까 뒷순위로 미룬다) + 앳코더 D E 풀이 / D E 합쳐서 30분 잡고 안풀리면 답 보기 D가 어려웠다 백트래킹을 떠올리는건 어렵지 않은데 시간복잡도 최적화+ 경우의 수를 줄이기 위한 가지치기가 필요하다 그대로 백준으로 넘어온다면 골드 3이상을 부여하고 싶다 E는 개쉬워보이는데 D 버리고 E 풀걸 그랬다.... 수험생일 시절에도 그랬고 내가 풀 수 있는 문제인지 아닌지 판단하고 취사선택하는 게..
AtCoder Beginner Contest 307 후기 (ABC 307 3솔) C 개 드럽다 구현량 많고 실수하기 쉬운 순수 구현 문제이다 C를 못풀었는데도 레이팅 1021이 나와서 순방에 성공했다 C에 대부분의 시간을 사용했고 E는 쳐다볼 시간도 없었다 A - 걍풀면됨 B - 펠린드롬, 브루트포스, 문자열 #include #define fastio cin.tie(0)->sync_with_stdio(0) #define ll long long using namespace std; bool ispel(string s){ int ssize = s.length(); int l = 0,r = ssize-1; while (l>N; vector v; for (int i = 0; i >S; // a번째랑 b번째 합쳐서 펠린드롬되면 yes v.push_..
AtCoder Beginner Contest 306 후기 (ABC 306 4솔) ABC305는 친구생일에 술먹고 노느라 스킵했다 ABC306은 또 Unrated처리되었다 왜이러냐증말 이번 앳코더 ABCD번 문제는 매우 쉬웠고 빨리 풀었다 대신 E는 뭔가 쉬운듯하면서 안 풀리고 F는 아이디어가 생각이 안남..,.. ABCDE를 안정적으로 풀고 F도 간간히 풀 수 있어야 민트에 올라갈 수 있을 텐데 말이다 앳코더 복기랑 업솔빙을 많이 해야 하는데 자꾸 귀찮아서 미룬다 A - 쉬움 문자열의 모든 원소를 순회하면서 2번씩 출력하기만 하면 된다 B - 오버플로우를 조심하자 / 비트연산 첫 제출에 실수해서 5분패널티를먹었다 2^63의 숫자를 표현하기 위해선 64비트짜리 자료형을 사용해야 하고 이 경우 C++에서는 uint64를 쓰거나 아님 파이썬으로 풀어야 한다 bigint??도 아마 가능할텐..
AtCoder Beginner Contest 304 후기 (ABC 304 4솔) 여러모로 아쉬웠음. C가 더러워 보여서 미루고 D로 넘어갔는데, D를 풀 아이디어가 생각나지 않아서 시간만 날렸다. E는 예상 외로 쉬웠다 그리고 이번 앳코더에는 체점 큐가 밀리는 사고가 있어서... 답이 틀려도 그게 틀렸는지 알고 싶으면 2~30분을 기다려야 했다. 주최측에서도 문제라고 생각했는지 시험 종료 1분전에 시험 시간을 20분 연장시켜 줬지만 추가된 시간 동안 다른 문제를 풀지는 못했음. 악!! 체점 큐가 밀리는 이슈 때문에 대회가 Unrated 처리되었다!! 이번에 30점가량 올릴 수 있었는데!!악!! 체점 큐가 밀리는 이슈 때문에 대회가 Unrated 처리되었다!! 이번에 30점가량 올릴 수 있었는데!!악!! 체점 큐가 밀리는 이슈 때문에 대회가 Unrated 처리되었다!! 이번에 30점가..
AtCoder Beginner Contest 303 후기 (ABC 303 4솔) 계피맛에서 녹차맛이되었다 B는 독해가 어렵고 D는 DP라서 어려웠고 A는 비트연산자를 잘못쓰는 실수를 했다 사람들이 느낀 난이도는 이러하다. E까지는 평이한 난이도이고 F는 어렵게 나옴 E는 잘 비비면 풀 수도 있었겠는데 딱 보고 아이디어가 떠오르지는 않더라 문제 이해가 어렵기도 했고 A - 조건문, 문자열 뭐 없다 B - 영어독해, 카운팅 코드가 좀 잘렸는데 잘린 부분엔 return 0밖에 없다 Two people who did not stand next to each other in any of the photos may be in a bad mood. 이거를 ->> 어떤 사진에서도 한번도 바로 옆에 인접한 적이 없는 두명의 사람 쌍은 bad mood상태가 된다 라고 해석해야 함 C - 쉬운 시뮬레이..
AtCoder Beginner Contest 302 후기 (ABC 302 4솔) 4솔 -> 12점 상승 총평 : B C의 구현이 귀찮았고, C를 한번에 구현하는 데 실패했고, D번 문제는 구현에 실수가 있다는 걸 미루다가 마지막에 제출했고, E번 문제는 아이디어가 틀렸다. 그린은 다음 기회에... A 걍풀기 실수만 안하면 된다. 1분 4초컷!! B - 2차원 배열, 구현 #include #define fastio cin.tie(0)->sync_with_stdio(0) #define ll long long using namespace std; int dx[8]={1,1,1,0,-1,-1,-1,0}; int dy[8]={-1,0,1,1,1,0,-1,-1}; int main(void) { fastio; int H,W;cin>>H>>W; vector vv(H); queue qq; for (..
AtCoder Beginner Contest 301 후기 (ABC 301 4솔) 사람들이 참여를 별로 안했는지?? 순위가 잘 나왔다 잘하면 다음 앳코더 때 그린에 도착할 수 있겠다 E F G번 문제는 읽어봤는데도 뭐 할 수 있는게 없더라. 수련이 필요하다. 그건 그렇고 또 콘테스트 초반에 서버가 터졌다 이거 또 unrated처리되나 하고 조마조마했다 A. A번은 언제나 실수만 안하면 된다 B. 반복문, 1차원 배열 B번 역시 실수만 안하면 된다 예제만 몇 번 돌려보면 실수 안 할 문제 C. 문자열 #include #define fastio cin.tie(0)->sync_with_stdio(0) #define ll long long using namespace std; int cnta[26],cntb[26]; int at,bt; int main(void) { fastio; string..
AtCoder Beginner Contest 300 후기 (ABC 300 3솔) 요약 : 어려움. 감떨어졌다 ** ABC 298과 299는 디도스공격으로 인해 서버가 제대로 동작하지 않았고, unrated 처리되었고, 제대로 응시하지 않았음. A - 그냥 풀면 된다. 선언만 해놓고 cin으로 입력을 안받아서 1 WA B - 까다로움. 2차원 배열을 만든 뒤, 브루트 포스로 한칸씩 밀어보면서 검사한다 #include #define fastio cin.tie(0)->sync_with_stdio(0) #define ll long long using namespace std; int main(void) { fastio; int H,W;cin>>H>>W; set A,B,C; for (int i = 0; i < H; i++) { for (int j = 0; j < W; j++) { char t..