개발자 톡

연습문제 톡 [21년 재직자 대회 예선] 마이크로서버

마이크로 서버 도와주세요

등록일
2022-03-22 22:16:08
조회수
949
작성자
mswon706

가이드 영상 참고하여 아래와 같이 코드를 작성해 보았는데 10점밖에 맞지 못했네요...

혹시 어디서 부족함이 있었을까요? 

도와주세요 고수님들..ㅠ


import java.util.*;
import java.io.*;


public class Main
{
    public static void main(String args[]) throws IOException
    {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int T = Integer.parseInt(br.readLine());
        int service[] = new int[901];
        int memSize, server, tmp, start, end;
        StringTokenizer st;
		
        for(int t=0; t900
                    server += service[end];
                    end--;
                }
            }

            if(start==end){
                tmp = getmin(service[300], service[end]);
                server +=tmp;
                service[300]-=tmp;
                service[end]-=tmp;

                server +=service[end];
            }

            server+=service[300]/3;
            if(service[300]%3>0){
                server++;
            }

            System.out.println(server);

        }// end tc
    
    }//end main

    static int getmin(int x, int y){
        if(x<=y){
            return x;
        }else{
            return y;
        }
    }
}




import java.util.*;
import java.io.*;


public class Main
{
    public static void main(String args[]) throws IOException
    {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int T = Integer.parseInt(br.readLine());
        int service[] = new int[901];
        int memSize, server, tmp, start, end;
        StringTokenizer st;
		
        for(int t=0; t900

                    if(service[300]>0 && service[300] + service[end]<=900){
                        tmp = getmin(service[300], service[end]);
                        server+=tmp;
                        service[300]-=tmp;
                        service[end]-=tmp;

                        server += service[end];
                        service[end]=0;
                    }else{
                        server += service[end];
                        service[end]=0;
                    }
                }
            }

            if( start==end){

                if( service[end]<=450){
                     tmp=service[end]/2;
                     server+=tmp;
                     service[end]-=tmp*2;
                }

                tmp = getmin(service[300], service[end]);
                server +=tmp;
                service[300]-=tmp;
                service[end]-=tmp;

                server +=service[end];
            }

            server+=service[300]/3;
            if(service[300]%3>0){
                server++;
            }

            System.out.println(server);

        }// end tc
    
    }//end main

    static int getmin(int x, int y){
        if(x<=y){
            return x;
        }else{
            return y;
        }
    }
}


#[21년_재직자_대회_예선]_마이크로서버
#java

이 카테고리의 톡 더보기