삐까냥의 파도타기
3408. 세가지 합 구하기 본문
문제 출처 : https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWEbPukqySUDFAWs
그냥 수학 문제였어요.
result1은 n까지의 시그마를 구하면 됩니다.
result2와 result3의 차이는 n입니다.
result3 = result2 + n
따라서 n*2의 시그마를 구한다음
n을 빼주고, 나누기 2를 하면 result2가 나옵니다.
result2에 n을 더하면 result3입니다.
import java.util.Scanner; public class Q3408 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int testCase = sc.nextInt();
for (int i = 1; i <= testCase; i++) { long value = sc.nextLong();
long result1 = getSigma(value); long result2 = getResult2(value); long result3 = result2 + value;
System.out.println("#" + i + " " + result1 + " " + result2 + " " + result3); } }
static long getSigma(long num) { return num * (num + 1) / 2; }
static long getResult2(long num) { long tempResult = getSigma(num * 2); tempResult = (tempResult - num) / 2; return tempResult; } } |
'코딩 > SW Expert Academy' 카테고리의 다른 글
3975. 승률 비교하기 (0) | 2018.03.27 |
---|---|
2814. 최장 경로 (0) | 2018.03.27 |
3260. 두 수의 덧셈 (0) | 2018.03.15 |
3376. 파도반 수열 (0) | 2018.03.15 |
3307. 최장 증가 부분 수열 (0) | 2018.03.15 |