분류 전체보기
문제 소개 www.acmicpc.net/problem/7453 내용 정수로 이루어진 크기가 같은 배열 A, B, C, D가 있다. A[a], B[b], C[c], D[d]의 합이 0인 (a, b, c, d) 쌍의 개수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 배열의 크기 n (1 ≤ n ≤ 4000)이 주어진다. 다음 n개 줄에는 A, B, C, D에 포함되는 정수가 공백으로 구분되어져서 주어진다. 배열에 들어있는 정수의 절댓값은 최대 228이다. 출력 합이 0이 되는 쌍의 개수를 출력한다. 해결 방법 아이디어 n이 4000이다. 브루트 포스로 구한다 생각했을 때, 4개의 배열이 있으므로 4000^4(256,000,000,000,000) 연산이 필요할 것 같다. 이와 비슷한 문제인 한 배열에서의 ..
문제 소개 www.acmicpc.net/problem/4386 내용 n개의 별들을 이어서 별자리를 하나 만들 것이다. 별자리를 이루는 선은 서로 다른 두 별을 일직선으로 이은 형태이다. 모든 별들은 별자리 위의 선을 통해 서로 직/간접적으로 이어져 있어야 한다. 별들이 2차원 평면 위에 놓여 있다. 선을 하나 이을 때마다 두 별 사이의 거리만큼의 비용이 든다고 할 때, 별자리를 만드는 최소 비용을 구하시오. 입력 첫째 줄에 별의 개수 n이 주어진다. (1 ≤ n ≤ 100) 둘째 줄부터 n개의 줄에 걸쳐 각 별의 x, y좌표가 실수 형태로 주어지며, 최대 소수점 둘째자리까지 주어진다. 좌표는 1000을 넘지 않는 양의 실수이다. 출력 첫째 줄에 정답을 출력한다. 절대/상대 오차는 10-2까지 허용한다. ..
문제 소개 www.acmicpc.net/problem/2887 내용 N개의 행성이 있다. 행성은 3차원 좌표 위의 한 점으로 생각하면 된다. 모든 행성을 연결하는 터널을 만들려고 한다. 두 행성 A(xA, yA, zA)와 B(xB, yB, zB)를 터널로 연결할 때 드는 비용은 min(|xA-xB|, |yA-yB|, |zA-zB|)이다. 터널을 총 N-1개 건설해서 모든 행성이 서로 연결되게 하려고 한다. 이때, 모든 행성을 터널로 연결하는데 필요한 최소 비용을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 행성의 개수 N이 주어진다. (1 ≤ N ≤ 100,000) 다음 N개 줄에는 각 행성의 x, y, z좌표가 주어진다. 좌표는 -109보다 크거나 같고, 109보다 작거나 같은 정수이다. 한 위치에 ..
1. Tenta CI 적용하기 - 먼저 github action 찾아보고 어떤 것인지 배우고 CI로 활용가능한지 파악 - github action은 프로젝트에서 트리거 조건이 만족하면 사용자가 정의한 work flow를 수행하는 CI/CD 도구이다. - Tenta 프로젝트에는 pr요청시 test와 정상 빌드 확인과 pr merge시 자동 배포를 적용할 예정이다. - github에서 작성한 travis에서 action으로 바꾸었을 때 장점을 설명한 문서가 있다. 읽어보니 travis yaml설정 보다 action이 조금 더 구체적이라고 생각이 들었다. - workflow 설정 yaml 파일에서 외부에 알려주면 안되는 민감한 정보들을 쉽게 가릴 수 있다. Main 기능 구현을 위한 - github Event..
1. Tenta github api caller 개발 - 매번 github api를 호출할때마다 restTemplete 객체를 이용해서 적용하는 것을 GithubAPICaller라는 객체로 감싸서 코드의 중복을 피하고자 했다. - 호출용 API URL을 모아서 GithubAPICommand Enum객체로 만들고 GithubAPICaller 클래스에서 제네릭을 이용해서 혹여나 다른 API가 생겼을 때 GithubAPICaller에서는 Github API만 호출하도록 하여 개발오류를 줄이고자 하였다. 2. 오늘도 어김없이 sovled.ac 클래스 올리기 아무리 하기싫어도 한문제씩이라도 하자. class 5 문제부터는 내힘으로 해결하는 문제 반, 해결못하고 답을 찾아보는 문제 반 정도 되는 것 같다. 이제부터..
1. 토익스피킹 part 5 공부/ 실전 모의고사 풀면서 연습하기.