목록Computer (171)
Machineboy空
https://www.acmicpc.net/problem/1629 1629번: 곱셈 첫째 줄에 A, B, C가 빈 칸을 사이에 두고 순서대로 주어진다. A, B, C는 모두 2,147,483,647 이하의 자연수이다. www.acmicpc.net 문제요약 A를 B번 곱한 뒤 C로 나눈 나머지를 구하라 난이도 Silver 1 풀이 분할 정복 ( Divide and Conquer) 작은 문제로 분할하여 해결하는 방식 모듈러 연산 (% 나머지 연산)에서 교환법칙이 성립한다는 것 (a+b)%c = a%c + b%c (a*b)%c = a%c * b%c log n = k 2를 k번 곱하면 n이 된다. ① 제곱수를 구할 때, 지수를 작은 덩어리로 나누어 곱셈 연산 횟수를 줄이는 것 ② 모듈러 연산에서 교환법칙이 성..
https://www.acmicpc.net/problem/1213
https://www.acmicpc.net/problem/9375 9375번: 패션왕 신해빈 첫 번째 테스트 케이스는 headgear에 해당하는 의상이 hat, turban이며 eyewear에 해당하는 의상이 sunglasses이므로 (hat), (turban), (sunglasses), (hat,sunglasses), (turban,sunglasses)로 총 5가지 이다. www.acmicpc.net 문제요약 서로 다른 패션의 범주, 그 범주안에 속하는 서로 다른 아이템의 종류를 파악, 서로 다른 코디의 경우의 수를 구하는 문제 난이도 Silver 3 풀이 여집합 활용 : 전체 경우의 수 - 해당되지 않는 경우의 수 REVIEW 서로 다른 주머니, 주머니 안의 서로 다른 공의 종류 이렇게 치환해 생각하..
보다 구조적으로, c++ 하단에서 어떤일이 일어나는지 보여준다. 무심코 썼던 함수라거나, 전역변수를 초기화하지 않았을 때 디폴트값이 설정되는 것등을 해주는 보이지 않는 녀석들에 관한 이야기. 클래스 생성자, 자동 복사 생성자 등 생성자는 기본 생성자가 있고 복사해서 생성하는 방법이 있다. 그리고 복사해서 생성할 때 변수 공간에 할당하는 연산자를 알아볼 것. 3.1 Class Constructor When an instance pf a class is created, the class constructor sets up the initial state of the object. ex. Default : Unit Cube(d=1) Automatic Default Constructor If we do not ..
2.2 Heap Memory Unlike stack memory, Heap memory allows us to create memory independent of the lifecycle of a function. Heap Memory If memory needs to exist for longer than the lifecycle of the function, we must use heap memory. The only way to create heap memory in C++ is with the new operator The new operator returns a pointer to memory storing the data - not an instance of the data itself. me..
https://www.acmicpc.net/problem/1620 1620번: 나는야 포켓몬 마스터 이다솜 첫째 줄에는 도감에 수록되어 있는 포켓몬의 개수 N이랑 내가 맞춰야 하는 문제의 개수 M이 주어져. N과 M은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수인데, 자연수가 뭔지는 알지? 모르면 www.acmicpc.net 문제요약 숫자와 포켓몬 이름이 매핑되어 있는 도감에, 숫자를 넣으면 포켓몬 이름이, 포켓몬 이름을 넣으면 숫자를 출력. 난이도 Silver 4 풀이 입력값이 숫자인지 문자인지 판단 atoi(), stoi() *atoi()사용하지 않는 방법 추후 추가 배열과 map의 탐색 시간복잡도 배열 탐색 : O(N) map 탐색 : O(logN) ios_base::sync_with..
https://www.acmicpc.net/problem/2559 2559번: 수열 첫째 줄에는 두 개의 정수 N과 K가 한 개의 공백을 사이에 두고 순서대로 주어진다. 첫 번째 정수 N은 온도를 측정한 전체 날짜의 수이다. N은 2 이상 100,000 이하이다. 두 번째 정수 K는 합을 구하기 www.acmicpc.net 문제 요약 n개 범위의 구간 합 중 최대값을 출력 난이도 Silver 3 풀이 구간합(prefix sum) 최댓값 갱신 슬라이딩 윈도우 REVIEW 단순하게 중첩 for문으로 시작점으로부터 N개의 원소를 더해 vector에 push_back()했더니 메모리 초과. vector형이 문제인가 싶어 int 배열로 바꾸었더니 시간 초과가 났다. 정답률이 35%인데 너무 단순하게 접근한 것부터..
https://www.acmicpc.net/problem/9996 9996번: 한국이 그리울 땐 서버에 접속하지 총 N개의 줄에 걸쳐서, 입력으로 주어진 i번째 파일 이름이 패턴과 일치하면 "DA", 일치하지 않으면 "NE"를 출력한다. 참고로, "DA"는 크로아티어어로 "YES"를, "NE"는 "NO"를 의미한다. www.acmicpc.net 문제 요약 접두사, 접미사 확인하여 같은 패턴의 문자열인지 판단 난이도 Silver 3 풀이 '*' 구분 문자 기준 split 입력값과의 비교 REVIEW 1차 시도: 패턴이 3글자로 주어지는 줄 알고 s[0], s[2]와 단순 비교 2차 시도: split이용해 앞, 뒤 비교. ab*ab로 접두사,접미사가 같을 경우를 고려하지 못함. string.find()로..