알고리즘(7)
-
백준 4150 피보나치 수(c++)
https://www.acmicpc.net/problem/4150 4150번: 피보나치 수 피보나치 수열은 다음과 같이 그 전 두 항의 합으로 계산되는 수열이다. 첫 두 항은 1로 정의된다. f(1) = 1, f(2) = 1, f(n > 2) = f(n − 1) + f(n − 2) 정수를 입력받아, 그에 해당하는 피보나치 수를 출력 www.acmicpc.net 문제를 읽어보면 알 수 있듯이 숫자의 길이가 100자리가 넘어간다. 이런 문제는 long long int도 메모리 초과가 뜨기 때문에 어떻게 풀까? 고민해봐야 된다. 정답은 문자열string을 쓰면 되는데 문제를 풀 때 피보나치 수를 직접 적어보면서 코드를 어떻게 짤지 고민을 해봤다. //1 1 2 3 5 8 13 21 34 55 89 144 23..
2022.04.02 -
C++ String/STL
string 클래스 헤더 파일, 생성 방법 헤더 파일 : #include 함수 : str1.size(); 함수 설명 : string의 사이즈를 반환합니다. 함수 예시 : str1.size(); str1="CIZI"; ==> "CIZI" 이므로 4를 반환합니다. 함수: str1.clear(); 함수 설명 : 스트링에 들어있는 문자열을 지우는 함수입니다. 함수 예시: str1.clear(); size=0이 됨 함수: str1.empty(); 함수 설명 : 스트링이 비었는지 확인하는 함수입니다. 비었으면 true를 반환합니다. 비었음의 기준은 size, length가 0인 것입니다. 함수 : swap 함수 설명: str1, str2를 swap 해준다. swap(str1, str2); stack 헤더 파일, 생..
2021.12.01 -
백준 다리놓기 1010 C++
우선 먼저 했던 코드부터 올려보자면 #include #include #include #pragma warning(disable:4996) using namespace std; int main() { int t = 0; cin >> t; for (int i = 0; i > a >> b; vector b_b; a = min(a, b-a); unsigned long long int sum = 1; for (int q = 1; q = 1; u--) { sum = sum * b; for (int k = 0; k < a; k++) { if (sum% b_b[k] == 0 && b_b[k] != 1) { sum = sum / b_b[k]; b_b[k] = 1; } } ..
2021.11.26 -
C++ 수학함수 #include <math>
2주 차에서는 앞으로 알고리즘 문제를 어떻게 접근해야 하는 수학적 지식?을 늘려줍니다. 많은 디테일과 기초지식과 오개념을 가지고 있다면 2주 차 수학 문제를 풀면서 오개념을 바로잡는 실력을 기르는 것을 목표로 2주차 스터디를 들으시면 감사하겠습니다. 아마도 밑에 나오는 문제들은 헤더 파일에 #include 나 #include 를 추가로 적어주시면 수학식을 풀어가는데 유용한 라이브러리를 사용할 수 있습니다. (루트 함수, 제곱, 제곱근, 삼각함수 등등 사용 가능) https://www.acmicpc.net/problem/4153 4153번: 직각삼각형 입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변..
2021.11.15 -
C++ 기본코드
# include using namespace std; int main() { int i = 0; cout > i; cout
2021.11.14 -
(c++) 배열, 구조체, 포인터 (0주차)
배열, 구조체, 포인터는 C++의 세 가지 복합 데이터 형이다. 배열은 동일한 데이터형에다가 여러 개의 값을 하나의 데이터 객체에 저장할 수 있으며 인덱스를 통해 인덱스 내 값에 접근할 수 있다. 구조체는 배열과 달리 데이터형이 다른 여러 개의 값을 하나의 데이터 객체 안에 저장한다. 도트(.) 멤 머 연산자를 사용하여 개별적인 멤버에 접근한다. 구조체는 사용하기 전에 구조체를 어떻게 설계할지를 미리 생각해둬야된다. 그러면 구조체 템플릿 안에 어떤 멤버를 넣을 것인지 정의한다. 그러면 구조체가 완성이 되고 사용자의 의도와 맞게 사용할 수 있습니다. 예를 들어 자동차에 성분에 대한 값을 구조체의 템플릿으로 하고 구조체를 만들어본다고 하면 #include struct car { char car_name[20..
2021.11.08