본문 바로가기
728x90

전체 글240

[C++] 백준 2003번: 수들의 합2 https://www.acmicpc.net/problem/2003 2003번: 수들의 합 2 첫째 줄에 N(1 ≤ N ≤ 10,000), M(1 ≤ M ≤ 300,000,000)이 주어진다. 다음 줄에는 A[1], A[2], …, A[N]이 공백으로 분리되어 주어진다. 각각의 A[x]는 30,000을 넘지 않는 자연수이다. www.acmicpc.net 최초풀이 수열을 처음부터 끝까지 각각의 부분을 기준으로 하나의 루프를 추가하여 누적합을 구해고 판단해준다. #include #include using namespace std; int main() { int N, M, k, count = 0; vectorv; cin >> N >> M; for (int i = 0; i > k; .. 2021. 7. 27.
[C++] 백준 2748번: 피보나치수2 https://www.acmicpc.net/problem/2748 2748번: 피보나치 수 2 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 최초 풀이 주의사항 89번째까지 도달하게 된다면 int형 데이터 타입으로는 범위가 넘어가기 때문에 long long 자료형을 사용 #include using namespace std; long long arr[91]; int main() { int n; cin >> n; arr[0] = 0; arr[1] = 1; for (int i = 2; i 2021. 7. 27.
[C++] sort 함수 정리 sort 함수를 사용하기 위해서는 algorithm이라는 라이브러리를 include해주어야 한다. sort 함수의 파라미터 형태 sort(배열의 시작주소, 배열의 마지막주소, (조건함수명)) 를 작성하여주면 된다. 여기서 default값은 오름차순으로 실행된다. #include #include #include using namespace std; bool compare(int a, int b) return aname=name; this->point=point; } //점수기준 오름차순 정렬 bool operator point < student.point; } }; int main(){ Student students[]={ Student("김소.. 2021. 7. 27.
[C++] 백준 4375번: 1 https://www.acmicpc.net/problem/4375 4375번: 1 2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오. www.acmicpc.net 최초 오류 무작정 11...11인 수를 n으로 나누려한다면 런타임 에러가 발생한다. 이유: 계속 안나눠 진다면 11...11의 길이가 무한정 커져서 계산 자체에 오류가 발생한다. 길이(자리수)가 2000이라면 계산이 될 수 없기 때문이다. 풀이 문제에서 어떤 수로 나누어진다는 것을 판별 할때는 커지는 수를 계속해서 나누려는 수로 나눈나머지로 한정시켜킨다. (a+b)%c = (a%c+b%c)%c (나머지는 같음을 이용함 계속해서 나머지만을 이용) 작은 자리숫.. 2021. 7. 27.
탈모관리(TS샴푸, 탈모샴푸, 맥주효모환) 어제 탈모검사를 받고 약뿐만아니라 샴푸 역시 바꿔보았습니다. TS샴푸가 커뮤니티에 유명하고 효능도 좋다고 하여 쿠팡에서 구매해서 사용을 해보기로 했습니다. 제품명 : 뉴프리미엄TS샴푸(가격 - 할인가 16,260원) 오늘 아침에 처음 사용해 봤는데 샴푸액이 투명하지 않고 불투명한 색이어더라구요! 탈모 치료 제대로 해보겠습니다. 이후에 후기 남기도록 하겠습니다. 주변 지인에게 맥주효모환이 그렇게 효과가 좋다는 추천을 받아 같이 복용하기로 했습니다. 탈모치료 가즈아~! 2021. 7. 27.
[C++] 백준 10610번: 30 https://www.acmicpc.net/problem/10610 10610번: 30 어느 날, 미르코는 우연히 길거리에서 양수 N을 보았다. 미르코는 30이란 수를 존경하기 때문에, 그는 길거리에서 찾은 수에 포함된 숫자들을 섞어 30의 배수가 되는 가장 큰 수를 만들고 싶어한 www.acmicpc.net 최초 풀이 전략 자리수가 10^6만큼이므로 숫자형 데이터타입이 아닌 문자열로 받아 각각의 자리수에 대한 조건을 따져준다. #include #include #include using namespace std; void solve(string n) { vectorv; string ans = ""; int total = 0; for (int i = 0; i < n.size(); i++) { v.push_.. 2021. 7. 26.
[C++] memset 함수 memset(Memory + Set) 함수 기능 - 특정 배열을 정해진 값으로 사이즈만큼 초기화해 줍니다. memset(배열명, 초기화할 값, 초기화할 배열 사이즈) memset 함수를 사용할 때는 cstring이라는 라이브러리를 include해주워야 합니다. (예시코드) #include int arr[10]; memset(arr, 0, sizeof(arr)); 위 코드는 arr이라는 크기 10을 가지는 배열을 0값으로 최기화한 것을 의미합니다. *sizeof 함수는 arr의 전체 사이즈를 반환해줍니다. 부가적인 사용법 #include #include // string.h 파일이 필요합니다. using namespace std; int main() { char a[20]; // 1바이트마다 모두 10로 .. 2021. 7. 26.
[C++] 백준 2960번: 에라토스테네스의 체 https://www.acmicpc.net/problem/2960 2960번: 에라토스테네스의 체 2, 4, 6, 8, 10, 3, 9, 5, 7 순서대로 지워진다. 7번째 지워진 수는 9이다. www.acmicpc.net 최초 풀이 #include #include // memset 라이브러리 #include using namespace std; bool Not_prime[1001]; void solve(int n, int k) { int num = 0; for (int i = 2; i > K; memset(Not_prime, false, sizeof(Not_prime)); solve(N, K); return 0; } 2021. 7. 26.
[C++] 백준 1837번: 암호제작 https://www.acmicpc.net/problem/1837 1837번: 암호제작 원룡이는 한 컴퓨터 보안 회사에서 일을 하고 있다. 그러던 도중, 원룡이는 YESWOA.COM 으로부터 홈페이지 유저들의 비밀키를 만들라는 지시를 받았다. 원룡이는 비밀 키를 다음과 같은 방법으로 www.acmicpc.net 최초 풀이 #include using namespace std; int main() { long long P;// 입력받는 P값이 10^100이라 문자로 받아서 처리해야함... int K, t; cin >> P>>K; bool check = true; for (int i = 2; i < K; i++) { if (P % i == 0) { check = false; t = i; break; } } i.. 2021. 7. 26.
728x90