SSAFY/SWEA

[SWEA] 3408 : 세가지 합 구하기

믕비 2023. 5. 5. 13:43

https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=3&contestProbId=AWEbPukqySUDFAWs&categoryId=AWEbPukqySUDFAWs&categoryType=CODE&problemTitle=&orderBy=SUBMIT_COUNT&selectCodeLang=JAVA&select-1=3&pageSize=10&pageIndex=4 

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

각각의 합의 관계성을 고려하여 공식 만들어 사용하였다.

 

내 코드

메모리 : 37296 KB

시간 : 154 ms

코드길이 : 770 B

 

[내 코드]

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Solution {

	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringBuilder sb = new StringBuilder();
		StringTokenizer st;
		
		int T = Integer.parseInt(br.readLine());
		for(int t = 1; t <= T; t++) {
			sb.append('#').append(t).append(' ');
			
			long N = Integer.parseInt(br.readLine());
			
			long S1 = S1(N);
			long S2 = 2 * S1 - N;
			long S3 = 2 * S1;
			
			sb.append(S1).append(' ').append(S2).append(' ').append(S3).append('\n');
		}
		System.out.print(sb);
	}
	
	public static long S1(long n) {
		return (n * n + n) / 2;
	}

}

 

메모리 사용량이 적고 실행 시간도 짧은 코드 가져와봄

난 코드의 가시성이 중요하다고 생각해서 저렇게 코드를 짰는데 그냥 바로 공식을 넣어서 돌리는 게 효율성을 좋나? 생각해서 내 컴퓨터로 돌려봤더니 똑같았음. 그냥 가시성 좋게 짜는 게 나은 듯.

import java.util.Scanner;
 
public class Solution {
    public static StringBuffer result = new StringBuffer();
 
    public static void main(String args[]) throws Exception {
        Scanner sc = new Scanner(System.in);
         
        int T = sc.nextInt();
        for (int t = 1; t <= T; t++) {
            long N = sc.nextLong();
            result.append("#" + t + " " + N*(N+1)/2 + " " + N*N + " " + N*(N+1));
            if (t < T) result.append("\n");
        }
        System.out.print(result);
        sc.close();
    }
}

'SSAFY > SWEA' 카테고리의 다른 글

[SWEA] 3431 : 준환이의 운동관리  (0) 2023.05.07
[SWEA] 2806 : N-Queen  (0) 2023.05.07
[SWEA] 8016 : 홀수 피라미드  (0) 2023.05.05
[SWEA] 4013 : 특이한 자석  (0) 2023.05.04
[SWEA] 1952 : 수영장  (0) 2023.05.04