목록Computer/Coding Test (122)
Machineboy空

https://www.acmicpc.net/problem/1813문제요약N개의 말 중에 참인 말의 개수를 구하여라. 난이도Silver 5풀이 포인트Ad-Hoc의 규칙을 찾아내는 것!REVIEW경우의 수를 다 따져야 한다고 생각하니 머리가 아팠고, 무언가 예외없는 대단한 규칙을 발견해야만 할 것 같아 부담스러운 문제였는데AdHoc이라는 알고리즘이 있구나!를 새로이 알게 되었다.CODE#include using namespace std;int n, s;int a[51];bool hasT = false;int main(){ cin >> n; for (int i = 0; i > s; a[s]++; } for (int i = 51; i >= 0; i--) { i..
문제 난이도와 출제 범위총 4문제 출제자료구조: queue, vector, pair, map, set 등문자열 다루기: 문자열 자르기, 숫자 변환 등기존 라이브러리 위주 활용dfs, bfs 최단거리,경우의 수 등의 알고리즘 문제는 나오지 않았음.기본 자료구조와 문법을 숙지하니? 정도의 테스트였다.시험 환경모니토 앱 이용 원격 감시다중 모니터 사용 불가노트북 + 마우스, 키보드 연결 허용빈 종이 1장과 펜 허용(노트 불가)기존 프로그래머스 문제 에디터처럼 입출력 폼까지는 제공앞으로의 공부 방향일단 너무 기본기가 부족하다는 생각을 했다.c++은 문제풀이용이니까 하면서 소홀히 했던 언어 공부의 한계를 느꼈다. 자료구조별 C R U D 관련 메소드 암기문자열 공백 등 자유자재로 다루기알고리즘을 더 공부할 게 아..

https://www.acmicpc.net/problem/14469문제요약도착한 시간과, 검문 시간이 주어질 때 모든 소가 출입하는데 걸리는 최소 시간. 난이도Silver 4풀이 포인트max그리디REVIEW바로 맞아버려서 의아했다.하지만 모범 풀이에서 다음 소가 도착한 시간과, 이전 소가 점검을 마친 시간 사이에 간극이 있을 때,시간을 갱신해주는 로직과, 시간 경과를 더해주는 과정이 훨씬 간결하다. 배워두기. 또 따로 int형에 숫자를 받아 pair에 넣는 방식이 아니라 바로 pair요소에 집어넣는 것도 훨씬 간결해보인다. CODE// Mine#include using namespace std;int t,a,b;vector> v;int crtT;int main(){ cin >> t; for(i..
https://www.acmicpc.net/problem/11866 문제요약원소 개수 n, 제거해야하는 사람 k 요세푸스 순열을 출력하라! 난이도Silver 5풀이 포인트그리디가장 첫번째 회의는 진행한다고 가정하고 그 다음에 열 수 있는 회의부터 고려REVIEW 진짜 바보처럼 k를 3일 때만 가정하여 풀이를 구현했다가 틀렸다. queue를 활용하여 연속하는 순열만들기!쉽게 풀리니 문제 풀이가 재밌다 ㅎ CODE#include using namespace std;int n, k;queue q;vector v;int main(){ cin >> n >> k; for(int i = 1; i ";}
https://www.acmicpc.net/problem/1931 문제요약한 개의 회의실, 겹치지 않게 최대한 많은 회의를 진행하려면? 난이도Silver 1풀이 포인트그리디가장 첫번째 회의는 진행한다고 가정하고 그 다음에 열 수 있는 회의부터 고려REVIEW 우선 문제를 제대로 안 읽어서 해당 회의를 모두 진행할 수 있는 최소 회의실 수를 구하는 줄 알고,범위를 봤는데 2^32-1? 포기해버렸다. 아직 pair, map, set 등 자료 구조를 적절히 자유자재로 구사할 줄 모르는 것 같다.요런 아이큐 테스트 스러운 문제는 꼭 맞추고 싶은데 또 답으로 달려갔기에 반성. CODE#include using namespace std;int from, to, n, idx = 0, ret =1;int main(){..
https://www.acmicpc.net/problem/1987 1987번: 알파벳 세로 $R$칸, 가로 $C$칸으로 된 표 모양의 보드가 있다. 보드의 각 칸에는 대문자 알파벳이 하나씩 적혀 있고, 좌측 상단 칸 ($1$행 $1$열) 에는 말이 놓여 있다. 말은 상하좌우로 인접한 네 칸 중의 www.acmicpc.net 문제요약 밟지 않은 새로운 알파벳 칸으로만 갈 수 있을 때, 이동할 수 있는 최대 칸 난이도 Gold 4 풀이 포인트 DFS 활용 이전 글자와 중복 체크 REVIEW 아직 문제가 주어졌을 때, bfs와 dfs중 무엇을 선택해야할지 모르겠다. dfs는 감이 오는데 bfs의 경우 아직 낯설다.. 이 문제의 경우 string에 지나온 값들을 누적해주고 그것을 초기화할 시점을 잘못 짚어 모든..

https://www.acmicpc.net/problem/14497 14497번: 주난의 난(難) 주난이는 크게 화가 났다. 책상 서랍 안에 몰래 먹으려고 숨겨둔 초코바가 사라졌기 때문이다. 주난이는 미쳐 날뛰기 시작했다. 사실, 진짜로 뛰기 시작했다. ‘쿵... 쿵...’ 주난이는 점프의 파 www.acmicpc.net 문제요약 한 번의 점프 시, 벽에 닿을 때까지 진동이 상하좌우로 퍼져나간다. 범인을 찾을 때까지 몇 번의 점프를 해야하는가. 난이도 Gold 4 풀이 포인트 bfs 응용 문제 잘읽기 REVIEW 단순한 dfs 문제겠거니 하면서 풀이 시작했는데, 계속 segment fault에 부딪혔다. 정답률이 53%라, 나도 풀 수 있겠거니하고 계속해서 도전하다가 실패했다. 난이도를 확인하니 과연 g..
https://www.acmicpc.net/problem/14620 14620번: 꽃길 2017년 4월 5일 식목일을 맞이한 진아는 나무를 심는 대신 하이테크관 앞 화단에 꽃을 심어 등교할 때 마다 꽃길을 걷고 싶었다. 진아가 가진 꽃의 씨앗은 꽃을 심고나면 정확히 1년후에 꽃이 피므 www.acmicpc.net 문제요약 상하좌우로 피는 꽃 세 송이를 최소 비용으로 심기 난이도 Silver 2 풀이 포인트 dfs 응용 REVIEW 무조건 풀 수 있을 것 같은데 안 풀려서 너무 답답했는데 어찌저찌 하드 코딩으로 해냈다. CODE #include using namespace std; int n, a[11][11], visited[11][11]; vector co; int dx[] = {-1,1,0,0}; i..