반응형
94. 더 크게 합치기
문제 설명
- 연산 ⊕는 두 정수에 대한 연산으로 두 정수를 붙여서 쓴 값을 반환합니다.
- 12 ⊕ 3 = 123
- 3 ⊕ 12 = 312
- 양의 정수 a와 b가 주어졌을 때, a ⊕ b와 b ⊕ a 중 더 큰 값을 return 하는 solution 함수를 완성해 주세요.
- 단, a ⊕ b와 b ⊕ a가 같다면 a ⊕ b를 return 합니다.
제한사항
- 1 ≤ a, b < 10,000
입출력 예시
- a ⊕ b = 991 이고, b ⊕ a = 919 입니다. 둘 중 더 큰 값은 991 이므로 991을 return 합니다.
- a ⊕ b = 898 이고, b ⊕ a = 889 입니다. 둘 중 더 큰 값은 898 이므로 898을 return 합니다.
풀이
using System;
public class Solution {
public int solution(int a, int b) {
string sumAB = a.ToString() + b.ToString();
string sumBA = b.ToString() + a.ToString();
int AB = int.Parse(sumAB);
int BA = int.Parse(sumBA);
if(AB > BA){
return AB;
} else if( AB < BA){
return BA;
} else return AB;
}
}
// string type -> int type 변환 value.ToString()
// int type -> string type 변환 int.Parse(value)
// string으로 변환 후 덧셈을 진행하게 되면 숫자형이 아닌 문자형의 결합이기 때문에 조건에 만족한다.
// int로 변환하는 이유
// 1. 수의 비교를 하기 위함
// 2. 문자열은 크기를 비교할 수 없다.
95. 홀수 vs 짝수
문제 설명
- 정수 리스트 num_list가 주어집니다. 가장 첫 번째 원소를 1번 원소라고 할 때, 홀수 번째 원소들의 합과 짝수 번째 원소들의 합 중 큰 값을 return 하도록 solution 함수를 완성해주세요. 두 값이 같을 경우 그 값을 return합니다.
제한사항
- 5 ≤ num_list의 길이 ≤ 50
- -9 ≤ num_list의 원소 ≤ 9
입출력 예시
- 홀수 번째 원소들의 합은 4 + 6 + 7 = 17, 짝수 번째 원소들의 합은 2 + 1 + 6 = 9 이므로 17을 return합니다.
- 홀수 번째 원소들의 합은 -1 + 5 + 3 = 7, 짝수 번째 원소들의 합은 2 + 6 = 8 이므로 8을 return합니다.
풀이
using System;
public class Solution {
public int solution(int[] num_list) {
int sumA = 0;
int sumB = 0;
for(int i = 0; i < num_list.Length; i+=2){
sumA += num_list[i];
}
for(int i = 1; i < num_list.Length; i+=2){
sumB += num_list[i];
}
if(sumA > sumB){
return sumA;
} else if(sumA < sumB){
return sumB;
} else return sumA;
}
}
// 홀수와 짝수의 합을 저장할 변수 A, B 선언
// for 반복을 통해 합을 저장 후 비교
96. 세균 증식
문제 설명
- 어떤 세균은 1시간에 두배만큼 증식한다고 합니다. 처음 세균의 마리수 n과 경과한 시간 t가 매개변수로 주어질 때 t시간 후 세균의 수를 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ n ≤ 10
- 1 ≤ t ≤ 15
입출력 예시
- 처음엔 2마리, 1시간 후엔 4마리, 2시간 후엔 8마리, ..., 10시간 후엔 2048마리가 됩니다. 따라서 2048을 return합니다.
- 처음엔 7마리, 1시간 후엔 14마리, 2시간 후엔 28마리, ..., 15시간 후엔 229376마리가 됩니다. 따라서 229,376을 return합니다.
풀이
using System;
public class Solution {
public int solution(int n, int t) {
for(int i = 0; i < t; i++){
n *= 2;
}
return n;
}
}
// t가 1 증가하면, n은 2배수로 증가
- 정답률 높은 순부터 풀이
- 매일 3문항 풀이
반응형
'프로그래머스 C# 코딩테스트' 카테고리의 다른 글
C# 프로그래머스 - 홀짝 구분하기, n의 배수 고르기, 대문자와 소문자 (70) | 2023.10.01 |
---|---|
C# 프로그래머스 #32 - 배열의 원소 삭제하기, 뒤에서 5등까지, 0 떼기 (71) | 2023.09.22 |
C# 프로그래머스 #30 - 할 일 목록, 제곱수 판별하기, 접미사인지 확인하기 (71) | 2023.09.19 |
C# 프로그래머스 #29 - A 강조하기, 꼬리 문자열, 홀짝에 따라 다른 값 반환하기 (62) | 2023.09.11 |
C# 프로그래머스 #28 - l로 만들기, 배열 비교하기, 순서 바꾸기 (61) | 2023.09.09 |