본문 바로가기

반응형

전체

2020년 8월 공부일지 [푼 문제] 1. BOJ 110문제 (598 solved) 2. Codeforces 11회 참여 (New Account! Rating 625) - Round #661 (Div. 3) / Round #662 (Div. 2) / Round #663 (DIv. 2) / #Round 664 (Div. 2) / Educational Round 93 / Global Round 10 / Round #665 (Div. 2) / Educational Round 94 / Round #666 (Div. 2) - virtual participant : Round #656 (Div. 3) / Educational Round 87 3. Atcoder 1회 참여 (Rating 199) - Atcoder Beginner Contes..
SUAPC 2020 Div.1 참가 후기 SUAPC (신촌지역 대학생 프로그래밍 대회 동아리 연합 여름 대회) 2020 Div.1에 참가하였다. 팀명 : 처음보는사람들끼리신청마감1시간전에만든팀 팀원 : pjh6792(나) , dart , seastar105 신촌지역의 대학교(연세대, 서강대, 홍대, 이대, 숙대)들이 연합해서 개최한 대회이며, div1에는 총 29팀이 참여했다고 한다. 본격적으로 알고리즘을 공부한 지 약 4달째만에 처음으로 실전 대회를 참여하게 되었는데, 정말 열악한 환경 속에서 참가했다. 우선, 3명 다 모두 초면이었고 대회 신청 마감 직전에 팀을 모아서 신청하게 되었다. (팀 이름의 유래다...) 사실 원래는 어차피 서울에도 가지 못하고, 개인적인 테스트 겸 대회를 참가하려 해서 1 인팀으로 신청을 했었다. 물론 다들 ICP..
[BOJ 2336] 굉장한 학생 [문제] : https://www.acmicpc.net/problem/2336 2336번: 굉장한 학생 문제 N명의 학생이 참여하여 세 번의 시험을 치렀다. N명의 학생들은 세 번의 시험에 모두 응시하였다. 조교는 각각의 시험에서 같은 등수의 학생이 한 명도 없도록 성적을 매겼다. A라는 학생이 www.acmicpc.net [난이도] - Platinum 2 (2020.08.05 solved.ac 기준) [개념] - 세그먼트 트리 (Segment Tree) [풀이] 우선 https://jason9319.tistory.com/57 블로그의 설명을 참고하여 풀이를 하였다. 문제를 요약하자면, 각 학생이 세 번의 시험에 참여하였고, 학생 A보다 세 과목이 모두 더 높은 등수인 사람이 없다면 A를 '굉장하다'라고..
2020.07.15 ~ 2020.07.31 공부 일지 [푼 문제] 1. BOJ 27문제 (527 solved) 2. Codeforces 6회 참여 (Rating 1448 -> 1418) - Round #657 (Div. 2) / Round #658 (Div. 2) / Round #659 (Div. 2) / Educational Round 92 / Round #660 (Div. 2) - virtual participant : Educational Round 88 [공부한 개념] 1. FFT (Fast Fourier Transform) 2. 분할 정복 (Divide and Conquer) 보름간의 공부 일지를 올린 이유는 최근의 충격적인 코포 결과로 인해 8월부터 마음을 다시 다잡기 위해, 그리고 뭔가 15일부터 시작하는 것보단 매달 1일을 기준으로 잡는 게 ..
[C++] string (문자열) 클래스 정리 및 사용법과 응용 [목차] 1. string 클래스란? 2. string 클래스의 입출력 3. string 클래스 생성 4. string 클래스 연산자 활용 5. string 클래스의 멤버 함수 6. string 클래스의 멤버 함수 사용 예시 1. string 클래스란? - C++ STL에서 제공하는 클래스로, 말 그대로 string(문자열)을 다루는 클래스이다. - C에서는 char* 또는 char[] 의 형태로 문자열을 다뤘다면, C++에서는 문자열을 하나의 변수 type처럼 사용하며, 문자열을 훨씬 다양하고 쉽게 다룰 수 있게 해 준다. - char* , char[] 과 다르게 문자열의 끝에 '\0' 문자가 들어가지 않으며, 문자열의 길이를 동적으로 변경 가능하다. 2. string 클래스의 입/출력 C++ 입출력 ..
2020.06.15 ~ 2020.07.14 공부 일지 [푼 문제] 1. BOJ 89문제 (현재까지 500문제 solved) 2. Codeforces 9회 참여 (Rating 1517 -> 1448) - Round #650 (Div. 3) / Round #652 (Div. 2) / Educational Round 90 / Round #653 (Div. 3) / Round #654 (Div. 2) / Global Round 9 / Round #655 (Div. 2 , Unrated) / - Virtual participation : Round #636 (Div. 3), Round #651 (Div. 2) 3. Google KickStart Round D 참여 [공부한 개념] 1. 최단거리 - 다익스트라(Dijkstra) 알고리즘 - 벨만-포드 (Bellman-..
[BOJ 2437] 저울 [문제] : https://www.acmicpc.net/problem/2437 2437번: 저울 하나의 양팔 저울을 이용하여 물건의 무게를 측정하려고 한다. 이 저울의 양 팔의 끝에는 물건이나 추를 올려놓는 접시가 달려 있고, 양팔의 길이는 같다. 또한, 저울의 한쪽에는 저울추들만 놓� www.acmicpc.net [개념] - 그리디 (Greedy) 알고리즘 [풀이] 아이디어만 떠올린다면 생각보다 쉬운 문제이다. N개의 추가 주어졌을 때, 추들을 이용하여 측정할 수 없는 무게 중 가장 작은 무게를 구하는 것이다. 첫 번째로, 측정할 수 있는 무게들을 모두 구하는 것은 당연히 풀이의 의도가 아니라는 것을 알 수 있어야 한다. 완전 탐색으로 구한다고 한다면 추의 개수가 최대 1000개이므로 경우의 수가 최대..
[BOJ 8980] 택배 [문제] : https://www.acmicpc.net/problem/8980 8980번: 택배 입력의 첫 줄은 마을 수 N과 트럭의 용량 C가 빈칸을 사이에 두고 주어진다. N은 2이상 2,000이하 정수이고, C는 1이상 10,000이하 정수이다. 다음 줄에, 보내는 박스 정보의 개수 M이 주어진다. M은 1이 www.acmicpc.net [필요 개념] - 그리디 (Greedy) 알고리즘 [풀이] 문제 난이도 치고 (풀이일 기준 Gold 4) 생각보다 풀이 방법이 쉽게 떠오르지 않은 문제였다. 처음에는 보내는 마을을 오름차순으로 정렬한 후, 현재 트럭에 있는 박스 개수를 계속 비교하면서 더 채울 수 있으면 채우고, 내릴 수 있으면 내리는 방식으로 하였으나 당연히 WA를 받았다. 다음과 같은 반례가 있..