BOJ::1475 방 번호

https://www.acmicpc.net/problem/1475


입력으로 주어진 숫자가 6,9인 경우에만 따로 처리하면 된다.


<JAVA>


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
32
33
34
35
36
37
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
class Main{
    public static void main(String args[]) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int n =Integer.parseInt(br.readLine());
        
        if(n==0){
            System.out.println(1);
            return;
        }
        
        int setNums[]= new int[10];
        while(n>0){
            int a = n%10;
            setNums[a]++;
            n/=10;
        }
        
        int max=0;
        for(int i = 0 ; i < 10 ; i++){
            if(i==6 || i==9){
                continue;
            }
            if(max < setNums[i]){
                max = setNums[i];
            }
        }
        if(max < (setNums[6]+setNums[9]+1)/2){
            max = (setNums[6]+setNums[9]+1)/2;
        }
        
        System.out.println(max);
    }
}
 

cs


C++


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
32
33
34
35
#include <iostream>
using namespace std;
 
int res[10];
 
int main() {
    int n;
    cin >> n;
 
    if (n == 0) {
        cout << 1 << endl;
        return 0;
    }
 
    while (n > 0) {
        int a = n % 10;
        res[a]++;
        n /= 10;
    }
 
    int max = 0;
    for (int i = 0; i < 10; i++) {
        if (i == 6 || i == 9) {
            continue;
        }
        if (max < res[i]) {
            max = res[i];
        }
    }
 
    if (max < (res[6+ res[9+ 1/ 2) {
        max = (res[6+ res[9+ 1/ 2;
    }
    cout << max << endl;
}
cs


'BOJ::문제풀이' 카테고리의 다른 글

1759 암호 만들기  (0) 2017.12.31
1697 숨바꼭질  (0) 2017.12.31
1463 1로만들기  (0) 2017.12.31
1389 케빈 베이컨의 6단계 법칙  (0) 2017.12.31
1325 효율적인 해킹  (0) 2017.12.31

+ Recent posts