02.02 시험 풀이
2023. 2. 2. 18:28ㆍ개발일지
1.
package test;
public class Solution1 {
public int solution(int num1) {
int answer = 0;
int[] coin = {500,100,50,10};
int point = 1000-num1;
for (int i = 0; i < coin.length; i++) {
if(point/coin[i] > 0){
answer += point/coin[i];
point = point%coin[i];
}
}
return answer;
}
public static void main(String[] args) {
Solution1 method = new Solution1();
int num1 = 160;
System.out.println(method.solution(num1));
}
}
풀이내용
- Int coin이라는 배열에 500,100,50,10을 입력시킵니다.
point라는 변수를 선언하면서 1000-num1값을 넣어줍니다.
반복문을 돌릴때 i =0부터 coin이라는 배열길이까지 반복해줄 때
point를 coin[i] 나눈 값이 0보다 클때 point/coin[i]값을 answer에 더해줍니다.
point%coint[i] 나눈값을 point에 입력합니다.
그리고 answer을 반환해줍니다.
2.
package test;
public class Solution2 {
public int solution(String s) {
int sum = 0, count = 0;
for (int i = 0; i < s.length(); i++) {
if(s.charAt(i)=='O'){
count++;
sum += count;
}else{
count =0;
}
}
return sum;
}
public static void main(String[] args) {
Solution2 method = new Solution2();
String s = "OXOOOXXXOXOOXOOOOOXO";
System.out.println(method.solution(s));
}
}
풀이내용
int sum과 count라는 변수를 초기화를 해줍니다.
반복문을 i = 0부터 s.length()만큼 반복 할때 s를 아스키코드로 'O'와 같을때
count를 더해주고 더한 count값을 sum에다 넣어줍니다. 만약 'O'가 아닐 경우 count는 0(초기화) 입니다.
그리고 sum을 반환해줍니다.
'개발일지' 카테고리의 다른 글
02.03 SpringBoot 및 서버 이해 (0) | 2023.02.03 |
---|---|
02.03 웹 동작방식 이해하기 (0) | 2023.02.03 |
02.02 시험 (0) | 2023.02.02 |
02.02 복습 (0) | 2023.02.02 |
02.01 bus (객체지향) (0) | 2023.02.01 |