๋ณธ๋ฌธ์œผ๋กœ ๋ฐ”๋กœ๊ฐ€๊ธฐ

https://softeer.ai/practice/info.do?idx=1&eid=623 

 

Softeer

์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ

softeer.ai


1. ๋ฌธ์ œ

์ž…๋ ฅ๋œ ์ •์ˆ˜ N๊ฐœ ์ค‘ ๋น„๋ฐ€๋ฉ”๋‰ด ์ •์ˆ˜ M๊ฐœ๋ฅผ ์™„์ „ํžˆ ํฌํ•จํ•˜๋ฉด secret, ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด normal ์„ ์ถœ๋ ฅํ•œ๋‹ค.

 

2. ํ’€์ด

๊ตฌํ˜„ ๋ฌธ์ œ์ด๋‹ค.

์ฒ˜์Œ์— input[i+k] == key[k] ์ผ ๋•Œ ์กฐ๊ฑด์„ ์ฃผ์—ˆ๋Š”๋ฐ, ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด !=์ผ ๊ฒฝ์šฐ์—๋„ for๋ฌธ์„ ๋น ์ ธ๋‚˜๊ฐ€์ง€ ์•Š๊ณ  ๊ณ„์† ๋Œ๊ธฐ ๋•Œ๋ฌธ์— ๋ฌธ์ œ๊ฐ€ ๋˜์—ˆ๋‹ค.

๋”ฐ๋ผ์„œ input[i+k] != key[k]์ผ ๋•Œ for๋ฌธ์„ ๋น ์ ธ๋‚˜์˜ค๋Š” ์กฐ๊ฑด์œผ๋กœ ์ˆ˜์ •ํ•˜์˜€๋‹ค.

 

3. ์ฝ”๋“œ

import java.util.*;
import java.io.*;


public class Main
{
    static int M, N, K;
    static int[] input, key;

    public static void main(String args[]) throws Exception
    {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());
        M = Integer.parseInt(st.nextToken());
        N = Integer.parseInt(st.nextToken());
        K = Integer.parseInt(st.nextToken());

        key = new int[M];
        input = new int[N];

        st = new StringTokenizer(br.readLine());
        for (int i=0; i<M; i++) {
            key[i] = Integer.parseInt(st.nextToken());
        }
        st = new StringTokenizer(br.readLine());
        for (int i=0; i<N; i++) {
            input[i] = Integer.parseInt(st.nextToken());
        }

        solution();
    }

    static void solution() {
        if (M > N) {
            System.out.println("normal");
            return;
        }

        for (int i=0; i<N; i++) {
            //๊ธ€์ž์ˆ˜ ์ฒดํฌ
            if (i+M-1 >= N) {
                System.out.println("normal");
                return;
            }
            //๊ฐ™์€์ง€ ์ฒดํฌ
            if (input[i] == key[0]) {
                for (int k=0; k<M; k++) {
                    if (input[i+k] != key[k]) break;
                    if (k == M-1) {
                        System.out.println("secret");
                        return;
                    }
                }
            }
        }
        System.out.println("normal");
    }
    /**
     * input[i+k] != key[k]์ด๋ฉด for๋ฌธ์„ ๋น ์ ธ๋‚˜๊ฐ€์•ผ ํ•œ๋‹ค.
     * ๋•Œ๋ฌธ์— ๊ฐ™์„ ๋•Œ์˜ ์กฐ๊ฑด์ด ์•„๋‹ˆ๋ผ ๋‹ค๋ฅผ ๋•Œ์˜ ์กฐ๊ฑด์œผ๋กœ for๋ฌธ์„ ๋น ์ ธ๋‚˜์˜ค๊ฒŒ ํ•ด์•ผ ํ•œ๋‹ค.
     */
}

4. ์‚ฌ๋‹ด

๊ฐ€์ž ๊ฐ€์ž ํ•  ์ˆ˜ ์žˆ๋‹ค