본문 바로가기

Java/SWEA

[JAVA] SWEA 1940. 가랏! RC카!

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

 

SW Expert Academy

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

swexpertacademy.com

 

 

정답 

 

import java.util.*;

class Solution {    
    
    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++)
        { 
        	int N = sc.nextInt();
        	int answer =0;
            int cur=0; //현재 속도 
            
            for(int i=0; i<N; i++)
            {
            	int C = sc.nextInt();
            	
            	//가속
            	if(C==1) {
            		int V = sc.nextInt();
            		cur +=V;
            		answer+=cur;
            	}
            	//현재 속도 유지 
            	else if(C==0)
            	{
            		answer+=cur;
            	}
            	//감속 
            	else if(C==2)
            	{
            		int V = sc.nextInt();
            		
            		//현재 속도보다 감속할 속도가 더 클 경우 
            		if(cur<V)
            		{
            			V=0;
            		}
            		else
            		{
            			cur-=V;
                		answer+=cur;
            		}
            	}
            	
            	
            }
            
            System.out.printf("#%d %d\n",t,answer);
            
            
        }
    }
}