[백준 16198번] 파이썬 - 에너지 모으기
백준 16198 - 에너지 모으기 시간 제한 1초, 메모리 제한 512MB # 조건 N개의 에너지 구슬이 일렬로 놓여져 있고, 에너지 구슬을 이용해서 에너지를 모으려고 한다. i번째 에너지 구슬의 무게는 Wi이고, 에너지를 모으는 방법은 다음과 같으며, 반복해서 사용할 수 있다. 에너지 구슬 하나를 고른다. 고른 에너지 구슬의 번호를 x라고 한다. 단, 첫 번째와 마지막 에너지 구슬은 고를 수 없다. x번째 에너지 구슬을 제거한다. Wx-1 × Wx+1의 에너지를 모을 수 있다. N을 1 감소시키고, 에너지 구슬을 1번부터 N번까지로 다시 번호를 매긴다. 번호는 첫 구슬이 1번, 다음 구슬이 2번, ... 과 같이 매겨야 한다. N과 에너지 구슬의 무게가 주어졌을 때, 모을 수 있는 에너지 양의 최댓값을..
2024.01.04
[백준 5014번] python, c++ - 스타트링크
백준 5014 - 스타트링크 시간 제한 1초, 메모리 제한 256MB # 조건 강호는 코딩 교육을 하는 스타트업 스타트링크에 지원했다. 오늘은 강호의 면접날이다. 하지만, 늦잠을 잔 강호는 스타트링크가 있는 건물에 늦게 도착하고 말았다. 스타트링크는 총 F층으로 이루어진 고층 건물에 사무실이 있고, 스타트링크가 있는 곳의 위치는 G층이다. 강호가 지금 있는 곳은 S층이고, 이제 엘리베이터를 타고 G층으로 이동하려고 한다. 보통 엘리베이터에는 어떤 층으로 이동할 수 있는 버튼이 있지만, 강호가 탄 엘리베이터는 버튼이 2개밖에 없다. U버튼은 위로 U층을 가는 버튼, D버튼은 아래로 D층을 가는 버튼이다. (만약, U층 위, 또는 D층 아래에 해당하는 층이 없을 때는, 엘리베이터는 움직이지 않는다) 강호가 ..
2024.01.02
[백준 15991번] 파이썬 - 1,2,3 만들기 6
백준 15991 - 1,2,3 더하기 6 시간 제한 1초(추가 시간 없음), 메모리 제한 512MB # 조건 정수 4를 1, 2, 3의 합으로 나타내는 방법은 총 3가지가 있다. 합을 나타낼 때는 수를 1개 이상 사용해야 한다. 단, 합은 대칭을 이루어야 한다. 1+1+1+1 1+2+1 2+2 정수 n이 주어졌을 때, n을 1, 2, 3의 합으로 나타내는 방법의 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 주어진다. n은 양수이며 100,000보다 작거나 같다. 출력 각 테스트 케이스마다, N을 1,2,3의 합으로 나타내는 방법의 수를 1,000,000,009로 나눈 나머지를 출력한다. # 접근 방법 1,..
2024.01.01
[백준 2583번] 파이썬, c++ - 영역 구하기
백준 2583_영역 구하기 시간 제한 1초, 메모리 제한 128MB # 조건 눈금의 간격이 1인 M×N(M,N≤100)크기의 모눈종이가 있다. 이 모눈종이 위에 눈금에 맞추어 K개의 직사각형을 그릴 때, 이들 K개의 직사각형의 내부를 제외한 나머지 부분이 몇 개의 분리된 영역으로 나누어진다. 예를 들어 M=5, N=7 인 모눈종이 위에 과 같이 직사각형 3개를 그렸다면, 그 나머지 영역은 와 같이 3개의 분리된 영역으로 나누어지게 된다. 와 같이 분리된 세 영역의 넓이는 각각 1, 7, 13이 된다. M, N과 K 그리고 K개의 직사각형의 좌표가 주어질 때, K개의 직사각형 내부를 제외한 나머지 부분이 몇 개의 분리된 영역으로 나누어지는지, 그리고 분리된 각 영역의 넓이가 얼마인지를 구하여 이를 출력하는..
2023.12.31
[백준 3187번] 파이썬 - 양치기 꿍
백준 3187 - 양치기 꿍 시간 제한 1초, 메모리 제한 128 MB # 조건 양치기 꿍은 맨날 늑대가 나타났다고 마을 사람들을 속였지만 이젠 더이상 마을 사람들이 속지 않는다. 화가 난 꿍은 복수심에 불타 아예 늑대들을 양들이 있는 울타리안에 마구 집어넣어 양들을 잡아먹게 했다. 하지만 양들은 보통 양들이 아니다. 같은 울타리 영역 안의 양들의 숫자가 늑대의 숫자보다 더 많을 경우 늑대가 전부 잡아먹힌다. 물론 그 외의 경우는 양이 전부 잡아먹히겠지만 말이다. 꿍은 워낙 똑똑했기 때문에 이들의 결과는 이미 알고있다. 만약 빈 공간을 '.'(점)으로 나타내고 울타리를 '#', 늑대를 'v', 양을 'k'라고 나타낸다면 여러분은 몇 마리의 양과 늑..
2023.12.27
no image
[C++] C++ 코드와 C 코드의 링킹
황기태 저자의 명품 C++ Programming 개정판을 읽고 학습한 내용을 정리한 포스트입니다! https://search.shopping.naver.com/book/catalog/32436115747 C++ Programming : 네이버 도서 네이버 도서 상세정보를 제공합니다. search.shopping.naver.com C 언어의 역사가 오래된 만큼 C 언어로 작성된 많은 라이브러리와 소스 코드가 존재하며, 현재도 C 언어는 여러 분야에서 활발히 사용되고 있다. 따라서, C++ 프로그램에서 C 코드를 연결하여 사용하는 방법을 알아두는 것이 많은 도움이 될 것이다. C/C++ 컴파일러의 이름 규칙 모든 컴파일러는 소스 코드를 컴파일하여 목적 코드(obj 파일)를 만들 때, 소스 코드에 있는 변수,..
2023.12.27
no image
[C++] 예외 처리
황기태 저자의 명품 C++ Programming 개정판을 읽고 학습한 내용을 정리한 포스트입니다! https://search.shopping.naver.com/book/catalog/32436115747 C++ Programming : 네이버 도서 네이버 도서 상세정보를 제공합니다. search.shopping.naver.com 실행 오류의 종류와 원인 실행 오류의 원인은 크게 두 가지로 나뉜다. 개발자의 논리가 잘못된 경우 예외에 대한 대책을 준비하지 않는 경우 사용자가 입력을 잘못하든 항상 예측 못한 사용자 입력이나 예외 상황 발생을 걸러내도록 프로그래밍하는 것이 중요하다. 아래는 예외 상황에 대한 대처가 없는 평범한 코드에 오류가 발생하는 사례이다. #include using namespace st..
2023.12.27
[백준 12893번] 파이썬 - 적의 적
백준 12893 - 적의 적 시간 제한 2초, 메모리 제한 512MB # 조건 적의 적은 친구 이론이란, A와 적대 관계인 B가 있고, B와 적대 관계인 C가 있을 때 A와 C는 우호 관계에 있다는 이론을 말한다. 하지만 이 이론에는 치명적인 단점이 있다. 바로 C와 적대 관계인 D가 있다면, A 역시 D와 적대관계가 되는 것이다. 하지만 또 생각해보면 D와 적대관계인 E가 있다면 E는 A, C와 우호 관계가 된다. 같은 맥락으로, B와 D 역시 우호 관계가 된다. 이 이론에 따라 친구를 사귀게 되면 적도 늘어나겠지만 어쨌거나 용재는 친구가 절실하다. 하지만 아직 이 이론은 전 우주상에서 엄밀히 증명된 적이 없다. 따라서 용재는 이론을 적용하기 전에 먼저 자신의 주위 N명에 관해서 이 이론이 성립하는지를..
2023.12.26
no image
[C++] 사용자 조작자 만들기
황기태 저자의 명품 C++ Programming 개정판을 읽고 학습한 내용을 정리한 포스트입니다! https://search.shopping.naver.com/book/catalog/32436115747 C++ Programming : 네이버 도서 네이버 도서 상세정보를 제공합니다. search.shopping.naver.com 조작자의 실행 과정 조작자를 만들기 전에 조작자가 어떻게 작동하는지 알아보자. 조작자는 항상 > 연산자와 함께 실행된다. cout
2023.12.21