한 걸음 두 걸음
baekjoon 1475 방번호 ] 문자열처리 / 수학(Math.log/ Math.pow) 본문
CSE/baekjoon & swexpert
baekjoon 1475 방번호 ] 문자열처리 / 수학(Math.log/ Math.pow)
언제나 변함없이 2019. 3. 15. 16:45반응형
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
double numLength = Math.log10(num);//num.length-1
int[] resultArr = new int[10];
//num값이 0일경우 예외처리
int result = 0;if(num == 0) result++;
//num>0일 때, 첫 번째 자리의 수부터 마지막 수까지 인덱스를 통해 배열에 넣어줌.
for(int i = (int)numLength ; i >= 0 ; i--) {
resultArr[num/(int)Math.pow(10, i)]++;
num = num - (num/(int)Math.pow(10, i))*(int)Math.pow(10, i);//했으면 맨 위의 수 없애기
}
int exc = resultArr[6] + resultArr[9];//6이랑9 특수하니까 따로 처리
//int연산했을 때 버려지는 소숫점 챙기기
if((double)exc/(double)2 > exc/2)resultArr[6] =(exc/2)+1;else resultArr[6] = exc/2; resultArr[9]=0;
//가장 큰 값 찾아서 결과값만들기
for(int i = 0; i <= 9; i++)
result = resultArr[i]<result?result:resultArr[i];
System.out.println(result);
}
}
반응형
'CSE > baekjoon & swexpert' 카테고리의 다른 글
baekjoon 7785 회사에 있는 사람 ] 자료구조 Map (Treemap / 사전 역순 정렬 Collections.reverseOrder()) (0) | 2019.03.27 |
---|---|
baekjoon 2864 ] 5와 6의 차이 (0) | 2019.03.25 |
baekjoon 1316 그룹 단어 체커 ] 문자열처리 (0) | 2019.03.15 |
baekjoon 5598 카이사르암호 ] 문자열 & 정수론 (0) | 2019.03.10 |
baekjoon 11656 접미사배열 ] 문자열처리 substring 사용 (0) | 2019.03.10 |