본문 바로가기
Algorithm/Programmers

최댓값과 최솟값

by 동그란 혜주 2019. 6. 4.

· 문제 설명

문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 (최소값) (최대값)형태의 문자열을 반환하는 함수, solution을 완성하세요.
예를들어 s가 1 2 3 4라면 1 4를 리턴하고, -1 -2 -3 -4라면 -4 -1을 리턴하면 됩니다.

 

· 제한 사항

s에는 둘 이상의 정수가 공백으로 구분되어 있습니다.

 

· 입출력 예

s return
1 2 3 4 1 4
-1 -2 -3 -4 -4 -1
-1 -1 -1 -1

 


· 완성 코드

import java.util.ArrayList;

class Solution {
  public String solution(String s) {
      String answer = "";      
      String num = "";
      ArrayList<String> temp = new ArrayList<String>();

      for (int i = 0; i < s.length(); i++) {
          if (s.charAt(i) != ' ') {
              num += s.charAt(i);
          } else {
              temp.add(num);
              num = "";
          }
          
          if (i == s.length()-1) {
              temp.add(num);
          }
      }
      
      int max = Integer.parseInt(temp.get(0));
      int min = Integer.parseInt(temp.get(0));
      
      for (int i = 0; i < temp.size(); i++) {
          max = max < Integer.parseInt(temp.get(i)) ? Integer.parseInt(temp.get(i)) : max;
          min = min > Integer.parseInt(temp.get(i)) ? Integer.parseInt(temp.get(i)) : min;
          
          answer = min + " " + max;
      }
      
      return answer;
  }
}

 


· 다른 사람의 풀이

class Solution {
 public static String solution(String s) {
	String[] temp = s.split(" ");
		
	int min, max, n;
	min = max = Integer.parseInt(temp[0]);
		
	for (int i = 0; i < temp.length; i++) {
		n = Integer.parseInt(temp[i]);
			
		if (min > n) min = n;
		if (max < n) max = n;
	}
		
	return min + " " + max;
 }
}

str.str.split(value) : value를 기준으로 문자열을 분할ㅠ..

함수 활용능력이 내가 너무 떨어지나봐..


· 문제 출처

https://programmers.co.kr/learn/courses/30/lessons/12939

 

알고리즘 연습 - 최댓값과 최솟값 | 프로그래머스

문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 (최소값) (최대값)형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를들어 s가 1 2 3 4라면 1 4를 리턴하고, -1 -2 -3 -4라면 -4 -1을 리턴하면 됩니다. 제한 조건 s에는 둘 이상의 정수가 공백으로 구분되어 있습니다. 입출력 예 s return 1 2 3 4 1 4 -1 -2 -3 -4 -4 -1 -1 -1

programmers.co.kr

 

'Algorithm > Programmers' 카테고리의 다른 글

큰 수 만들기  (0) 2019.06.04
최솟값 만들기  (0) 2019.06.04
주식가격  (0) 2019.06.04
점프와 순간 이동  (0) 2019.06.04
전화번호 목록  (0) 2019.06.04

댓글