mooon๐ŸŒ™
STUDY
mooon๐ŸŒ™
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (170)
    • ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ (147)
      • ๋ฐฑ์ค€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (53)
      • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] Lv1 (13)
      • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์ž…๋ฌธ (54)
      • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] SQL ๊ณ ๋“์  Kit (27)
    • BACK (4)
      • Spring (3)
      • PHP (0)
    • FRONT (5)
    • DevOps (8)
      • Jenkins (8)
    • GitHub๐ŸŒฑ (2)
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (1)
      • SQL (1)
    • Error ๐Ÿ’ฅ (0)
      • php (2)
    • ๐Ÿ˜‹ (1)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • โญ ๊นƒํ—ˆ๋ธŒ
  • ๐Ÿ’• ๋ฐฉ๋ช…๋ก
  • ๐Ÿ’ฅ ํƒœ๊ทธ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • SQL
  • SQL ๊ณ ๋“์  Kit
  • ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ
  • ๋ฐฑ์ค€
  • ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์ž…๋ฌธ
  • DevOps
  • c++
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
  • Python
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜

์ตœ๊ทผ ๊ธ€

250x250
hELLO ยท Designed By ์ •์ƒ์šฐ.
mooon๐ŸŒ™

STUDY

์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ/๋ฐฑ์ค€ ์•Œ๊ณ ๋ฆฌ์ฆ˜

๋ฐฑ์ค€ 4949 _ ๊ท ํ˜•์žกํžŒ ์„ธ์ƒ

2020. 2. 27. 14:29
728x90

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

 

4949๋ฒˆ: ๊ท ํ˜•์žกํžŒ ์„ธ์ƒ

๋ฌธ์ œ ์„ธ๊ณ„๋Š” ๊ท ํ˜•์ด ์ž˜ ์žกํ˜€์žˆ์–ด์•ผ ํ•œ๋‹ค. ์–‘๊ณผ ์Œ, ๋น›๊ณผ ์–ด๋‘  ๊ทธ๋ฆฌ๊ณ  ์™ผ์ชฝ ๊ด„ํ˜ธ์™€ ์˜ค๋ฅธ์ชฝ ๊ด„ํ˜ธ์ฒ˜๋Ÿผ ๋ง์ด๋‹ค. ์ •๋ฏผ์ด์˜ ์ž„๋ฌด๋Š” ์–ด๋–ค ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ๊ด„ํ˜ธ๋“ค์˜ ๊ท ํ˜•์ด ์ž˜ ๋งž์ถฐ์ ธ ์žˆ๋Š”์ง€ ํŒ๋‹จํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์งœ๋Š” ๊ฒƒ์ด๋‹ค. ๋ฌธ์ž์—ด์— ํฌํ•จ๋˜๋Š” ๊ด„ํ˜ธ๋Š” ์†Œ๊ด„ํ˜ธ("()") ์™€ ๋Œ€๊ด„ํ˜ธ("[]")๋กœ 2์ข…๋ฅ˜์ด๊ณ , ๋ฌธ์ž์—ด์ด ๊ท ํ˜•์„ ์ด๋ฃจ๋Š” ์กฐ๊ฑด์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค. ๋ชจ๋“  ์™ผ์ชฝ ์†Œ๊ด„ํ˜ธ("(")๋Š” ์˜ค๋ฅธ์ชฝ ์†Œ๊ด„ํ˜ธ(")")์™€๋งŒ ์ง์„ ์ด๋ฃฐ ์ˆ˜ ์žˆ๋‹ค. ๋ชจ๋“  ์™ผ์ชฝ ๋Œ€๊ด„ํ˜ธ("[")๋Š” ์˜ค๋ฅธ์ชฝ ๋Œ€

www.acmicpc.net


โญ ๋‚ด ์†Œ์Šค ์ฝ”๋“œ

#include<iostream>
#include <stack>
#include <string>

using namespace std;

int main(void) {
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	string s;
	stack <char> st1;

	while (1) {
		getline(cin, s);
        
        //"."๋ฌธ์ž์—ด์„ ๋ฐ›์„ ๊ฒฝ์šฐ ์ข…๋ฃŒ๋กœ ์ฒ˜๋ฆฌ
		if (s == ".") {
			break;
		}
        
		for (int i = 0; i < s.length(); i++) {
        	//์—ฌ๋Š” ๊ด„ํ˜ธ (, [๊ฐ€ ๋“ค์–ด์˜ค๋ฉด ์Šคํƒ์— push
			if (s[i] == '[') {
				st1.push(s[i]);
			}
			else if (s[i] == '(') {
				st1.push(s[i]);
			}
            //๋‹ซ๋Š” ๊ด„ํ˜ธ๊ฐ€ ๋“ค์–ด์˜ฌ ๊ฒฝ์šฐ
			else if (s[i] == ']') {
            	//์Šคํƒ์ด ๋น„์–ด์žˆ์œผ๋ฉด ์ง์ด ๋งž๋Š” ์—ฌ๋Š” ๊ด„ํ˜ธ๊ฐ€ ์—†์œผ๋ฏ€๋กœ
				if (st1.empty()) {
                	//No์ถœ๋ ฅ ํ›„ ์ข…๋ฃŒ
					cout << "no\n";
					break;
				}
                //์Šคํƒ์˜ top์ด ์ง์ด ๋งž๋Š” ๊ด„ํ˜ธ์ผ ๊ฒฝ์šฐ
				else if(st1.top() == '[') {
                	//ํ•ด๋‹น ๊ด„ํ˜ธ๋ฅผ pop
					st1.pop();
				}
                //์Šคํƒ์˜ top์ด ์ง์ด ๋งž๋Š” ๊ด„ํ˜ธ๊ฐ€ ์•„๋‹ ๊ฒฝ์šฐ
				else {
                	//'( ]'์‹์˜ ์ž…๋ ฅ์ด๊ธฐ์— No์ถœ๋ ฅ ํ›„ ์ข…๋ฃŒ
					cout << "no\n";
					break;
				}
			}
			else if (s[i] == ')') {
				if (st1.empty()) {
					cout << "no\n";
					break;
				}
				else if(st1.top() == '(') {
					st1.pop();
				}
				else {
					cout << "no\n";
					break;
				}
			}
            //string ๊ฐ ๋ฌธ์ž์˜ ํƒ์ƒ‰์ด ๋๋‚ฌ๊ณ  ์Šคํƒ์ด ๋น„์–ด์žˆ๋‹ค๋ฉด
			if ( i ==(s.length() -1) && st1.empty()) {
            	//๊ด„ํ˜ธ์˜ ์ง์ด ์ „๋ถ€ ๋งž์€ ๊ฑธ๋กœ ํŒ๋‹จ, Yes ์ถœ๋ ฅ
				cout << "yes\n";
			}
            //string ๊ฐ ๋ฌธ์ž์˜ ํƒ์ƒ‰์ด ๋๋‚ฌ๋Š”๋ฐ ์Šคํƒ์ด ๋น„์–ด์žˆ์ง€ ์•Š๋‹ค๋ฉด
			else if (i == (s.length() - 1) && !st1.empty()) {
            	//๊ด„ํ˜ธ์˜ ์ง์ด ์ „๋ถ€ ๋งž์ง€ ์•Š์€ ๊ฑธ๋กœ ํŒ๋‹จ, No ์ถœ๋ ฅ
				cout << "no\n";
			}
		}
		//๋‹ค์Œ ๋ฌธ์ž์—ด ํŒ๋‹จ์„ ์œ„ํ•ด ์Šคํƒ์„ ๋น„์›Œ์ค€๋‹ค
		while (!st1.empty()) st1.pop();
	}
	return 0;
}

 

๐Ÿ™ ๋ฌธ์ œ ํ’€์ด

getline(cin, s) : String ๋ณ€์ˆ˜์— ๋„์–ด์“ฐ๊ธฐ๋ฅผ ํฌํ•จํ•œ ๋ฌธ์ž์—ด์„ ๋ฐ›๋Š” ๋ฐฉ๋ฒ•

728x90
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)
    '์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ/๋ฐฑ์ค€ ์•Œ๊ณ ๋ฆฌ์ฆ˜' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • ๋ฐฑ์ค€ 10773 _ ์ œ๋กœ
    • ๋ฐฑ์ค€ 10828 _ ์Šคํƒ
    • ๋ฐฑ์ค€ 1874 _ ์Šคํƒ ์ˆ˜์—ด
    • ๋ฐฑ์ค€ 2920 _ ์Œ๊ณ„
    mooon๐ŸŒ™
    mooon๐ŸŒ™
    ๊ฐœ๋ฐœ ๊ณต๋ถ€ ๊ธฐ๋ก

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”