์ƒˆ์†Œ์‹

์•Œ๊ณ ๋ฆฌ์ฆ˜/BaekJoon

BOJ 10809๋ฒˆ: ์•ŒํŒŒ๋ฒณ ์ฐพ๊ธฐ

  • -
728x90

๋ฌธ์ œ

์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ๋งŒ ์ด๋ฃจ์–ด์ง„ ๋‹จ์–ด S๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ๊ฐ์˜ ์•ŒํŒŒ๋ฒณ์— ๋Œ€ํ•ด์„œ, ๋‹จ์–ด์— ํฌํ•จ๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ์—๋Š” ์ฒ˜์Œ ๋“ฑ์žฅํ•˜๋Š” ์œ„์น˜๋ฅผ, ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์€ ๊ฒฝ์šฐ์—๋Š” -1์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

 

์ž…๋ ฅ

์ฒซ๋ฒˆ์žฌ ์ค„์— ๋‹จ์–ด S๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‹จ์–ด์˜ ๊ธธ์ด๋Š” 100์„ ๋„˜์ง€ ์•Š์œผ๋ฉฐ, ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค.

 

์˜ˆ์ œ ์ž…์ถœ๋ ฅ

์ž…๋ ฅ : baekjoon

์ถœ๋ ฅ : 1 0 -1 -1 2 -1 -1 -1 -1 4 3 -1 -1 7 5 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1

 

์ฝ”๋“œ

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
int main() {
    int array[26]={0,};    
    for(int i=0;i<26;i++){
        array[i]=-1;        //๋ชจ๋“  ๋ฐฐ์—ด -1๋กœ ์ดˆ๊ธฐํ™”
    }
    char word[100]={"",};
    for(int i=0;i<100;i++){
        scanf("%c",&word[i]);
        if(word[i]=='\0'break;        //์ž…๋ ฅ ๊ฐ’์ด ์—†์„ ๋•Œ for๋ฌธ์„ ๋น ์ ธ๋‚˜์˜ด
        else if(array[static_cast<int>(word[i])-97]==-1)
            array[static_cast<int>(word[i])-97]=i;
    }
    for(int i=0;i<26;i++){
        printf("%d ",array[i]);
    }
    return 0;
}
cs

 

*๊ฐ„๋‹จํ•œ ํ•ด์„ค*

4~7๋ฒˆ ๋ผ์ธ : array๋ฐฐ์—ด(์ถœ๋ ฅ ๋ฐฐ์—ด)์„ -1๋กœ ๋จผ์ € ์ดˆ๊ธฐํ™” ํ•ด์คŒ

9~11๋ฒˆ ๋ผ์ธ : for๋ฌธ์„ 100๋ฒˆ ๋Œ๋ฆฌ๋Š”๋ฐ ๋งŒ์•ฝ ์ž…๋ ฅ๋œ ๊ฐ’์ด ์—†๋‹ค๋ฉด for๋ฌธ์„ ๋น ์ ธ๋‚˜์˜ค๋„๋ก break๋ฅผ ์ ์šฉํ•จ

12~13๋ฒˆ ๋ผ์ธ : ๋งŒ์•ฝ ์ž…๋ ฅ๋œ ๊ฐ’์ด ์žˆ๋‹ค๋ฉด ํ•ด๋‹น ๊ฐ’์„ static_cast๋ฅผ ์ด์šฉํ•˜์—ฌ int ๊ฐ’์„ ๋ณ€๊ฒฝํ•ด์ฃผ๊ณ  ํ•ด๋‹น๋˜๋Š” array์ž๋ฆฌ๊ฐ€ -1์ƒํƒœ(์ฆ‰, ๋จผ์ € ํ™•์ธ๋˜์ง€ ์•Š์€ ์ƒํƒœ)๋ผ๋ฉด ํ•ด๋‹น ๋ฐฐ์—ด์˜ ์ž๋ฆฌ์— i(๋ช‡๋ฒˆ์งธ ์ˆ˜์ธ์ง€ ์•Œ๋ ค์ฃผ๋Š” idx)๋ฅผ ์‚ฝ์ž…ํ•ด์คŒ

 

P.S

if(word[i]==NULL)๋กœ ์“ฐ๋‹ˆ๊นŒ warning ๋ฌธ๊ตฌ๊ฐ€ ๋–ณ๋‹ค. ์•„๋งˆ ์ปดํŒŒ์ผ๋Ÿฌ์— ๋”ฐ๋ผ์„œ NULL์ด๋ผ๋Š” ์˜ˆ์•ฝ์–ด๊ฐ€ ์—†์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— '\0' ์œผ๋กœ ์ˆ˜์ •ํ•˜์˜€๋‹ค.

 

*๋ฉ”๋ชจ๋ฆฌ*

2016KB

*์‹œ๊ฐ„*

0ms

*์–ธ์–ด*

C++17

*์ฝ”๋“œ๊ธธ์ด*

442B

*์ด ๋ฐฉ๋ฒ•๋งŒ์ด ๋งž๋Š” ์ •๋‹ต์€ ์•„๋‹™๋‹ˆ๋‹ค.

ํ›จ์”ฌ ์ข‹๊ณ  ๋น ๋ฅธ ๋‹ค๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณต๋ถ€ํ•˜์‹œ๋Š” ๋ถ„๋“ค ํ™”์ดํŒ…! '0'/*

 

๋ฐ˜์‘ํ˜•
Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.