Programers : 짝지어 제거하기
4550 단어 level2PROGRAMERSPROGRAMERS
짝지어 제거하기
코드
#include <iostream>
#include <string>
#include <stack>
using namespace std;
int solution(string s)
{
int answer = 0;
stack<int> sta;
int i=1;
sta.push(s[0]);
while(i < s.length())
{
if(!sta.empty() && s[i] == sta.top()){
sta.pop();
i++;
}else sta.push(s[i++]);
}
if(sta.empty()) answer = 1;
else answer =0;
return answer;
}
- 단순히 string에서 삭제하는 방식으로 하면 --> O(N^2)
- 효율성과 관련한 문제에 부딛히면 '자료구조'를 바꾸는 것을 생각해보기!
- 이전 값과 현재 값의 상관관계가 있는 경우
stack
을 고려해보자!
Author And Source
이 문제에 관하여(Programers : 짝지어 제거하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@neity16/Programers-짝지어-제거하기
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
#include <iostream> #include <string> #include <stack> using namespace std; int solution(string s) { int answer = 0; stack<int> sta; int i=1; sta.push(s[0]); while(i < s.length()) { if(!sta.empty() && s[i] == sta.top()){ sta.pop(); i++; }else sta.push(s[i++]); } if(sta.empty()) answer = 1; else answer =0; return answer; }
- 단순히 string에서 삭제하는 방식으로 하면 --> O(N^2)
- 효율성과 관련한 문제에 부딛히면 '자료구조'를 바꾸는 것을 생각해보기!
- 이전 값과 현재 값의 상관관계가 있는 경우
stack
을 고려해보자!
Author And Source
이 문제에 관하여(Programers : 짝지어 제거하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@neity16/Programers-짝지어-제거하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)