algorithm

๋ฐฑ์ค€ 2671

rkawk 2024. 8. 2. 11:06

๋ฌธ์ œ

ํ’€์ด

์ผํ•˜๋‹ค๊ฐ€ ์ •๊ทœ์‹์„ ๋งŽ์ด ๊ฒฝํ—˜ํ–ˆ๋Š”๋ฐ ๋”ฑ ๋ณด์ž๋งˆ์ž ๊ทธ๋ƒฅ ์ •๊ทœ์‹ ์“ฐ๋ผ๋Š” ๋ฌธ์ œ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. 

(100+1+|01)+๊ฐ€ ๋์ด๋‹ค..

์ •๊ทœ์‹ ๋ช‡๋ฐฑ์ž์งœ๋ฆฌ ์กฐ๊ฑด๋งž์ถ”๋А๋ผ ๋ˆˆ๋ฌผํ˜๋ฆฌ๋ฉด์„œ ์ผ์—ˆ๋Š”๋ฐ ๋„์›€์ด ๋˜๋Š”๊ฑฐ๊ฐ™๋‹ค.

 

#include <iostream>
#include <regex>
#include <string>
using namespace std;
bool matchReg(const string& str) {
    regex reg("(100+1+|01)+");
    return regex_match(str, reg); 
}

int main() {
    string str;
    cin>>str;
    if(matchReg(str)) cout<<"SUBMARINE"<<endl;
    else cout<<"NOISE"<<endl;
}