본문 바로가기
코테연습

1단계: 의좋은 형제

by jackypark 2022. 6. 23.

 위 문제를 파악하면 패턴이 보인다. 진우가 첫날에 선우에게 자신의 반을 주는 것 다음날 선우가 반주는 거 이렇게 서로 주고받고를 반복하게 된다. 그리고 반을 나누었을 때 홀수가 나올 경우, 그 식량을 통째로 넘겨준다... 이 말이 살짝 혼동스럽지만 코드로 표현하면 생각보다 간단한 거였다.

 

import java.io.*;
import java.util.Scanner;
class Main {
	public static void main(String[] args) throws Exception {
		Scanner sc=new Scanner(System.in);
	
	int jw=sc.nextInt();
	int sw=sc.nextInt();
	int day=sc.nextInt();
	
		for(int i=1;i<=day;i++){
			if(i%2!=0){// 홀수번째 날에 진우가 선우한테 식량을준다
					if(jw%2==0){
						jw=jw/2;
						sw=sw+jw;
					}else{
						jw=jw/2;
						sw=sw+jw+1;
					}
			}else{// 짝수번째 날에 선우가 진우한테 식량을 준다
				if(sw%2==0){
					sw=sw/2;
					jw=jw+sw;
				}else{
					sw=sw/2;
					jw=jw+sw+1;
				}
			}
				
		
		}
		System.out.println(jw+" "+sw);
	}
}

 

실행결과

처음 해본 코딩 문제였는데 코드 짜는 건 생각보다 할만한 것 같은데 문제를 파악하는 게 너무 힘든 거 같다. 내가 국어를 못해서 그런 것도 있는 거 같다... 많은 문제를 풀어 문제 파악 능력을 길러야 할 것 같다.

댓글