문제 설명 n가지 종류의 동전이 있다. 각각의 동전이 나타내는 가치는 다르다. 이 동전을 적당히 사용해서, 그 가치의 합이 k원이 되도록 하고 싶다. 그 경우의 수를 구하시오. 각각의 동전은 몇 개라도 사용할 수 있다. 사용한 동전의 구성이 같은데, 순서만 다른 것은 같은 경우이다. 입력 첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다. 출력 첫째 줄에 경우의 수를 출력한다. 경우의 수는 2^31보다 작다. 풀이 과정 해당 문제의 핵심은 동적 계획법이라고 한다. 동적 계획법에 대해 우선 알아보자 동적 계획법 (Dynamic Programming, DP) 최적화 ..
분류 전체보기
문제 설명 한국도로공사는 고속도로의 유비쿼터스화를 위해 고속도로 위에 N개의 센서를 설치하였다. 문제는 이 센서들이 수집한 자료들을 모으고 분석할 몇 개의 집중국을 세우는 일인데, 예산상의 문제로, 고속도로 위에 최대 K개의 집중국을 세울 수 있다고 한다. 각 집중국은 센서의 수신 가능 영역을 조절할 수 있다. 집중국의 수신 가능 영역은 고속도로 상에서 연결된 구간으로 나타나게 된다. N개의 센서가 적어도 하나의 집중국과는 통신이 가능해야 하며, 집중국의 유지비 문제로 인해 각 집중국의 수신 가능 영역의 길이의 합을 최소화해야 한다. 편의를 위해 고속도로는 평면상의 직선이라고 가정하고, 센서들은 이 직선 위의 한 기점인 원점으로부터의 정수 거리의 위치에 놓여 있다고 하자. 따라서, 각 센서의 좌표는 정수..
보호되어 있는 글입니다.
해당 문제의 내용은 아래와 같다. 우선 문제 파일을 다운로드 받아보았더니 압축 파일인 것 같지만 파일 형식을 알 수 없길래 파일의 확장자를 zip 파일로 변경하였더니 zip 파일로 변경된 것을 볼 수 있었다. 파일을 열어보니 Windows 7과 관련된 파일이 있었고, 이 파일을 열어보기 위해서는 가상머신에 winows7이 깔려 있어야 한다. 하지만 나는 깔려있지 않아서 Windows7 설치부터 시작하였다. 아래는 VMware에 Windows7을 설치하기 위해 참고한 사이트들이다. https://ssotori.tistory.com/227 https://nan491.tistory.com/entry/VMware-%EA%B0%80%EC%83%81%EB%A8%B8%EC%8B%A0%EC%97%90-Windows-7..
이 문제를 들어가니 아래와 같은 화면을 볼 수 있었다. 아니 그니까 이 문제 보자마자 공감해버렸다....ㅋㅋㅋㅋㅋ 진심 암호를 풀어야 뭘 볼 수 있지!!! 암호가 있긴 한거야...?!?! 난 이거 보고 ↑ 이런 생각만 했는데... 다른 사람들은 이 부분을 보고 Zip File Format의 Flags 필드 관련 문제라고 한다. 또한, 문제 파일을 다운로드 받아보니 '암호를 풀어야 뭘 볼수 있지!' 부분을 이해할 수 있었다. zip파일 내부에 있는 파일을 열려고 시도했더니 암호가 걸려 있어서 풀 수 없었다. 아래와 같이 암호를 입력해야 파일을 볼 수 있는 것을 확인할 수 있다. 압축 파일 안에 들어있는 이 세개의 파일이 모두 암호가 걸려있는 것을 볼 수 있었다. zip 파일의 구조를 참고하여 플래그를 수정..
해당 문제와 관련된 정보는 아래와 같다. 접속 정보 보기 버튼을 누르니 아래와 같은 페이지를 볼 수 있었다. 페이지 내부에 있던 STEP 1, STEP 2, FLAG 모두 들어가보니 STEP 1은 오른쪽 이미지, STEP 2와 FLAG 왼쪽 이미지와 같이 되어있었다. 이 부분을 통해 STEP 1, STEP 2를 순서대로 해결하면 FLAG 값이 나오는 것으로 유추할 수 있다. 우선 STEP 1 문제부터 풀어보자 해당 부분에서 더 확인할 수 있는 것은 없어서 소스코드로 넘어가보았다. @app.route("/step1", methods=["GET", "POST"]) def step1(): #### 풀이와 관계없는 치팅 방지 코드 global step1_num step1_num = int.from_bytes(o..