Python

알고리즘

Index로 상태 공간 정의하기

문제 2662번: 기업투자 어떤 투자가가 여러 기업들에게 돈을 투자해서 최대의 이익을 얻고자 한다. 단, 투자는 만원 단위로 할 수 있으며 각 기업은 많이 투자할수록 많은 이익을 투자가에게 돌려준다. 돈을 투자하지 www.acmicpc.net 재정의 두 가지 제약 조건이 존재한다. 정해진 투자액수만큼 투자 한다. 한 기업에는 한 번만 투자할 수 있다. 금액의 조합을 정해야 하고, 기업의 조합도 정해야 한다. 완전 탐색을 활용한다. 비 효율적인 상태공간 정의 완전 탐색을 해야하는 문제이다. 상태 공간을 기업의 개수, 남은 금액으로 단순하게 정의 했다. 그렇게 되면 다음과 같이 코드가 구성 된다. 다음 코드의 문제점이 무엇인지 생각 해 보자... def get_max_profit() -> List[int]:..

프로그래밍 언어/Java

(Python -> Java) 빠른 입력과, PQ

1. 기존 Python 코드 2. Java 변환 시도 3. 다른 사람의 Java 코드 기존에는 아래와 같이 C스럽게 처리를 했었다. inputLine을 받고, 이를 StringTokenizer로 잘라가면서 하나하나 집어 넣었다. 아래와 같이 stream으로 받아들이고, mapping을 한다음 array로 하는 Python의 map과 같은 기능이 가능하다! 4. 피드백 빠른 입출력을 외웠다, IOException의 가능성이 있으므로 throws로 하는게 좋다. Integer.MAX_VALUE, Integer.MIN_VALUE가 존재한다. PriorityQueue가 비교를 하는 만큼, Comparable를 implements해야 한다.

프로그래밍 언어/Java

(Python -> Java) 2차원 배열과 정렬

1. 기존 Python 코드 해야할 기능은 다음과 같다. 2차원 배열로 데이터 저장하기 2차원 배열 정렬하기 2차원 배열 순회하기 2. Java 변환 시도 3. 다른 사람의 Java 코드 빠른 입력 일반 Scanner가 아니라, InputStreamReader -> Bufferedreader로 해야 빠른 것 같다. readLine으로 한 줄 입력을 받고, 바로 parse하거나 또는 StringTokenizer로 문자열을 공백기준으로 split 하고 각각 parse한다. Comparable을 implements하는 클래스 그냥 무지성으로 2차원 배열을 만들었었다. [x, y] 좌표를 가지는 배열 하나, 이 배열들의 배열로 2차원으로 말이다. Java는 oop에 충실한 언어인 만큼, [x, y]를 배열로 하..

코딩 악귀
'Python' 태그의 글 목록 (2 Page)