티스토리 뷰
문제출처
문제
입출력 예
소스코드
import java.util.*;
class Solution {
public int solution(int a, int b, int c, int d) {
int dice[] = {a,b,c,d};
Arrays.sort(dice);
int ans = 0;
if(dice[0] == dice[3]){
ans = 1111 * dice[0];
}else if(dice[0] == dice[2] || dice[1] == dice[3]){
ans = (int)Math.pow(10 * dice[2] + (dice[0]+dice[3]-dice[3]),2);
}else if(dice[0] == dice[1] && dice[2] == dice[3]){
ans = (dice[0] + dice[2]) * (dice[3]-dice[0]);
}else if(dice[0] == dice[1]){
ans = dice[2] * dice[3];
}else if(dice[1] == dice[2]){
ans = dice[0] * dice[3];
}else if(dice[2] == dice[3]){
ans = dice[0] * dice[1];
}else{
ans = dice[0];
}
return ans;
}
}
풀이
주사위를 굴러 나온 숫자 a,b,c,d를 Arrays.sort 메서드를 이용해 정렬하여 풀어봤다.
세 주사위에서 나온 숫자가 p로 같고 나머지 다른 주사위에서 나온 숫자가 q라면 [ p, p, p, q ] || [ q, p, p, p ] 2가지 경우의 수가 존재한다. 다른 주사위에서 나온 숫자를 구할려면 서로 다른 첫번째 idx, 마지막 idx의 합에서 두가지 경우의 수가 다 들어맞는 두번째 idx를 빼주면된다.
'Java > 프로그래머스 코테' 카테고리의 다른 글
[Java] 프로그래머스 9로 나눈 나머지 (0) | 2024.02.13 |
---|---|
[Java] 프로그래머스 글자 이어 붙여 문자열 만들기 (0) | 2024.02.08 |
[Java] 프로그래머스 간단한 논리연산 (1) | 2024.01.27 |
[Java] 프로그래머스 배열 만들기4 (0) | 2024.01.25 |
[Java] 프로그래머스 배열 만들기2 (0) | 2024.01.19 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 대소문자 변환
- 호이스팅
- Replace
- replace와 replaceAll의 차이점
- Object.clone()
- 콜백 큐
- nodelist
- 프로그래머스 세로 읽기
- replaceAll
- 프로그래머스
- StringBuilder
- rep;ㅁce
- 배열 만들기3
- 프로그래머스 qr code
- 스코프
- 중첩스코프
- useeffet
- startsWith()
- 문자열 반복하기
- SQL 개발자
- 마진과 패딩의 차이점
- 배열만들기1
- n 번째 원소부터
- 신입개발자 면접 준비
- Java
- SQLD
- 브라우저의 기본 구조
- 엑셀 파일 추출
- 렌더링 과정
- 블록스코프
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함