์ƒˆ์†Œ์‹

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

BOJ 8959๋ฒˆ: OXํ€ด์ฆˆ

  • -
728x90

 

๋ฌธ์ œ

O๋Š” ๋ฌธ์ œ๋ฅผ ๋งž์€ ๊ฒƒ์ด๊ณ , X๋Š” ๋ฌธ์ œ๋ฅผ ํ‹€๋ฆฐ ๊ฒƒ์ด๋‹ค ๋ฌธ์ œ๋ฅผ ๋งž์€ ๊ฒฝ์šฐ ๊ทธ ๋ฌธ์ œ์˜ ์ ์ˆ˜๋Š” ๊ทธ ๋ฌธ์ œ๊นŒ์ง€ ์—ฐ์†๋œ O์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋œ๋‹ค ์˜ˆ๋ฅผ ๋“ค์–ด "OOXXOXXOOO" ์˜ ์ ์ˆ˜๋Š” 1+2+0+0+1+0+0+1+2+3=10์ ์ด๋‹ค 

OXํ€ด์ฆˆ์˜ ๊ฒฐ๊ณผ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค

 

์ถœ๋ ฅ

๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋งˆ๋‹ค ์ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค

 

์ž…๋ ฅ

5

OOXXOXXOOO

OOXXOOXXOO

OXOXOXOXOXOXOX

OOOOOOOOOO

OOOOXOOOOXOOOOX

 

์ถœ๋ ฅ

10

9

7

55

30

 

์ฝ”๋“œ

#include <iostream>

int main() {
    int N,sum=0,comboStack=0,idx=0;
    bool combo=false;
    scanf("%d",&N);
    for(int i=0;i<N;i++)
    {
        char temp[80];   //scanf๋Š” string์„ ๋ฐ›์„ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์—
        scanf("%s",&temp);    
        while(temp[idx]!='\0'){
            if(temp[idx]=='O') {
                if(combo){ sum+=comboStack;} //์ฝค๋ณด์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€ ์ ์ˆ˜
                else {combo=true;}
                comboStack++;
                sum++;        //O์ผ๋•Œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ถ”๊ฐ€๋˜๋Š” ์ ์ˆ˜
            
            }
            else if(temp[idx]=='X')
            {
                combo=false;
                comboStack=0;
            }
            idx++;
        }
        printf("%d\n",sum);
        sum=0;
        idx=0;
        comboStack=0;
    }
    return 0;
}

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

์ด ๊ธ€์€ ๊ฒŒ์ž„์˜ ์ฝค๋ณด ์‹œ์Šคํ…œ๊ณผ ์œ ์‚ฌํ•˜๋‹ค. ๋ฌธ์ž์—ด์„ ๋ฐ›์•„์„œ ๋ฌธ์ž์—ด์ด null('\0')์ด ์•„๋‹๋•Œ๊นŒ์ง€ ์‹คํ–‰ํ•ด์„œ ๊ฒฐ๊ณผ๊ฐ’์„ ๋„์ถœํ•œ๋‹ค. ์ฝค๋ณด์ผ๊ฒฝ์šฐ comboStack์˜ ๊ฐ’์„ ์ถ”๊ฐ€๋กœ ๋”ํ•ด์ฃผ๋„๋ก ํ•˜๋ฉฐ O์ธ ๊ฒฝ์šฐ์—๋Š” comboStack์„ ++๋กœ ์Œ“์•„์ฃผ๋„๋ก ํ•œ๋‹ค. ํ•œ์ค„์˜ ์นด์šดํŠธ๊ฐ€ ๋‹ค ๋๋‚œ ๊ฒฝ์šฐ 27~29์˜ ๊ฐ’์„ ๋ณด๋ฉด index,sum(ํ•ฉ)๊ณผ comboStack์„ ์ดˆ๊ธฐํ™” ์‹œ์ผœ์ฃผ์–ด์•ผ ํ•œ๋‹ค.

 

*๋ฉ”๋ชจ๋ฆฌ*

1984B

*์‹œ๊ฐ„*

0ms

*์–ธ์–ด*

C++ 14

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

607B

 

 

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

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

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

๋ฐ˜์‘ํ˜•
Contents

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

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