SWEA D3 16002. 합성수 방정식 (python)
합성수 방정식 풀이 문제를 보면 알겠지만 x-y = N을 만족시키는 10^9 이하의 두 합성수 x와 y를 아무거나 하나 구하는 프로그램을 작성하라 위와 같은 내용이 적혀있다. 따라서 N만큼의 차이가 나는 두 합성수만 답으로 내놓으면 된다는 것이다. 그래서 난 (1,2),(2,3),(3,4).... 를 비교하면서 합성수가 되는지, 그리고 8,9가 될 때 둘 다 합성수였으므로, 뭘 곱해도 합성수가 될 테니, 이를 N에 곱한 것을 출력했다. 출력값에서는 먼저 출력되는 x가 y보다 큰 값이기 때문에 x = N 9 y = N 8 로 만들고 출력해주면 되었다. T = int(input()) for testcase in range(1, T+1): # 합성수 일단, 소수가 아닌 것. 음수나 0이 아닌것. N = int..
2024. 2. 26.
SWEA D3 18662. 등차수열 만들기 (python)
등차수열 만들기 풀이 등차수열 문제이다. 문제에 안적힌 내용들이 있는데, 아래 먼저 푼 사람들의 내용을 보고 알았다. 주어지는 a,b,c의 순서는 바꿀 필요없다. 0의 출력은 0이 아니라 0.0으로 되어야한다. 테스트케이스중 0,2,1 의 경우 답이 1.5인데 이유는 2에서 1.5를 빼면 0,0.5,1 로 0.5를 값으로 하는 등차수열이 되기 때문이다. 또한 이 케이스에서 볼 수 있듯이 순서를 바꿔도 된다면 답은 0이 되어야하는데 그렇지가 않음을 확인할 수 있다. 난 아래처럼 풀었다. a,b,c 가 있을 때, c-b = b-a 가 되어야하고, 또한 이때 이게 성립하지 않으면 a,b,c중에 가장 작은 더하거나 뺄 x값을 정해줘야하는 문제이다. 그래서 solution이라는 함수를 생성하고 테스트 케이스를 이..
2024. 2. 26.