728x90
반응형
SMALL

문제 설명

부분 문자열이란 문자열에서 연속된 일부분에 해당하는 문자열을 의미합니다. 예를 들어, 문자열 "ana", "ban", "anana", "banana", "n"는 모두 문자열 "banana"의 부분 문자열이지만, "aaa", "bnana", "wxyz"는 모두 "banana"의 부분 문자열이 아닙니다.

문자열 my_string과 target이 매개변수로 주어질 때, target이 문자열 my_string의 부분 문자열이라면 1을, 아니라면 0을 return 하는 solution 함수를 작성해 주세요.


제한사항

  • 1 ≤ my_string의 길이 ≤ 100
  • my_string은 영소문자로만 이루어져 있습니다.
  • 1 ≤ target의 길이 ≤ 100
  • target은 영소문자로만 이루어져 있습니다.

입출력 예

my_string target result

"banana" "ana" 1
"banana" "wxyz" 0

입출력 예 설명

입출력 예 #1

  • 문제 설명과 같습니다.

입출력 예 #2

  • 문제 설명과 같습니다.
package Lv0;

public class H181843 {
	public int solution(String my_string, String target) {
		if (my_string.contains(target)) {
			return 1;
		} else {
			return 0;
		}
	}
}

**my_string**에 부분 문자열 **target**이 포함되어 있는지 확인하고, 포함되어 있다면 1을 반환하고 그렇지 않다면 0을 반환

728x90
반응형
LIST
728x90
반응형
SMALL

문제 설명

정수 배열 numbers와 정수 n이 매개변수로 주어집니다. numbers의 원소를 앞에서부터 하나씩 더하다가 그 합이 n보다 커지는 순간 이때까지 더했던 원소들의 합을 return 하는 solution 함수를 작성해 주세요.


제한사항

  • 1 ≤ numbers의 길이 ≤ 100
  • 1 ≤ numbers의 원소 ≤ 100
  • 0 ≤ n < numbers의 모든 원소의 합

입출력 예

numbers n result

[34, 5, 71, 29, 100, 34] 123 139
[58, 44, 27, 10, 100] 139 239

입출력 예 설명

입출력 예 #1

  • 예제 1번의 numbers를 문제 설명대로 더해가는 과정을 나타내면 다음의 표와 같습니다.i numbers[i] sum
        0
    0 34 34
    1 5 39
    2 71 110
    3 29 139
    29를 더한 뒤에 sum 값은 139이고 n 값인 123보다 크므로 139를 return 합니다.
  • 예제 2번의 numbers의 마지막 원소 전까지의 원소를 sum에 더하면 139입니다. 139는 n 값인 139보다 크지 않고 마지막 원소인 100을 더하면 139보다 커지므로 239를 return 합니다.
package Lv0;
/*
정수 배열 numbers와 정수 n이 매개변수로 주어집니다.
 numbers의 원소를 앞에서부터 하나씩 더하다가 그 합이 n보다 커지는 순간 이때까지 더했던 원소들의 합을 return 하는 solution 함수를 작성해 주세요.
 */
public class H181884 {
	public int solution(int[] numbers, int n) {
		int sum = 0;
		
		for (int i = 0; i < numbers.length; i++) {
			sum += numbers[i];
			
			if (sum > n) {
				break;
			}
		}
		return sum;
	}
}

**numbers**의 원소를 앞에서부터 하나씩 더해가며 그 합이 정수 **n**보다 커지는 경우 합을 반환

728x90
반응형
LIST

'알고리즘 > 프로그래머스 JAVA LV.0' 카테고리의 다른 글

조건에 맞게 수열 변환하기3  (0) 2023.04.30
부분 문자열인지 확인하기  (0) 2023.04.30
수 조작하기 1  (0) 2023.04.30
길이에 따른 연산  (0) 2023.04.30
정수찾기  (0) 2023.04.30
728x90
반응형
SMALL

문제 설명

정수 n과 문자열 control이 주어집니다. control은 "w", "a", "s", "d"의 4개의 문자로 이루어져 있으며, control의 앞에서부터 순서대로 문자에 따라 n의 값을 바꿉니다.

  • "w" : n이 1 커집니다.
  • "s" : n이 1 작아집니다.
  • "d" : n이 10 커집니다.
  • "a" : n이 10 작아집니다.

위 규칙에 따라 n을 바꿨을 때 가장 마지막에 나오는 n의 값을 return 하는 solution 함수를 완성해 주세요.


제한사항

  • 100,000 ≤ n ≤ 100,000
  • 1 ≤ control의 길이 ≤ 100,000
    • control은 알파벳 소문자 "w", "a", "s", "d"로 이루어진 문자열입니다.

입출력 예

n control result

0 "wsdawsdassw" -1

입출력 예 설명

입출력 예 #1

  • 수 n은 control에 따라 다음과 같은 순서로 변하게 됩니다.
  • 0 → 1 → 0 → 10 → 0 → 1 → 0 → 10 → 0 → -1 → -2 → -1
  • 따라서 -1을 return 합니다.
package Lv0;

public class H181926 {
	public int solution(int n, String control) {
		for (int i = 0; i < control.length(); i++) {
			char c = control.charAt(i);

			switch (c) {
				case 'w':
					n += 1;
					break;
				case 's':
					n -= 1;
					break;
				case 'd':
					n += 10;
					break;
				case 'a':
					n -= 10;
					break;
			}
		}
		return n;
	}
}

문자열 **control**의 각 문자에 따라 **n**의 값을 변경하고 최종 결과를 반환

728x90
반응형
LIST

'알고리즘 > 프로그래머스 JAVA LV.0' 카테고리의 다른 글

부분 문자열인지 확인하기  (0) 2023.04.30
n보다 커질 때까지 더하기  (0) 2023.04.30
길이에 따른 연산  (0) 2023.04.30
정수찾기  (0) 2023.04.30
첫 번째로 나오는 음수  (0) 2023.04.30

+ Recent posts