예를들어서
라는걸 입력받았을때, (의 갯수랑 )의 갯수가 맞으면 output값으로 '괄호가 일치한다 이년아!'
갯수가 안맞으면 '안맞잖아 이년아!'
뭐 이렇게 나오게 하고싶은데 생각하는거로는 진짜쉬운거같은데 코드를 못짜겠어
저 input값을 하나하나 받으면서 (가 나올때 stack에 집어넣고 )가 나올때 다시 끄집어내고
마지막 input값 까지 다 받았을때 스택 안에 뭔가 들어있거나, 아니면 input값을 다 받지도 않았는데 stack 안에서 꺼낼 '('가 없으면, output으로 안맞는다 이년아 가 나오게하고
마지막 까지 딱 다받았는데 stack 안에 아무것도 들어있지 않으면 일치한다 이년아 가 나오게 하는거 맞지?
근데 코드는 도대체 어떻게짜?
if(stack==\"괄호\") {~~~~;} else {~~~~;}
나 진짜 친절하지 않음?
그 스택을 만드는 코드랑, input 그 글자 하나하나를 [] 안에 집어넣는것도 쫌만 더 알려주면 안될까?
Stack stack=new Stack(); Input input[]=(글자){\"하나\",\"하나\"};
찬양하라 다익스트라
http://en.wikipedia.org/wiki/Shunting-yard_algorithm
갯수만 세면 좆된다. (())))((() 는 (가 5개 )가 5개지만, 짝이 맞는 괄호는 아니다.
어차피 function call 이 스택을 이용하니까 재귀로 짜면 댐
1스텝. \'(\' 문자 혹은 \')\' 문자 나올때까지 우선 쭉 읽음 , 2스텝 케이스1, \'(\' 문자가 나오면 재귀호출, 2스텝 케이스2 \')\' 문자가 나오면 리턴, 2스텝 케이스3 문자열 끝이나오면 짝이 안맞는다고 지랄하는 출력을 내보내고 강제종료
아니면 이렇게 짜도 됨 ( 이게 나오면 + 1 하고 ) 이게 나오면 -1 해서 나중에 0이 되면 정상, 중간에 음수가 되면 비정상
난 숫자센다고한적 없는데 성대아싸형이 왠 숫자를 해 성대아싸형 말대로하면 )))))(((((도 말되는 괄호임..
근데 난 왜 코딩을 못할까 코딩 해줄 형 없음?
그럼 내가 공부하는게 아니구나
바보냐 )))) 되면 음수되니까 비정상인데
괄호 갯수 세는게 아니라 나중에 0으로 딱 떨어져야 괄호 모든짝이 맞는거라고 친절히 알려주는데 돌대가리 같으니라고
어 그렇긴 하네 맞네
그렇긴 하네???? 말투봐라 이새끼
아니 형 말이 맞다고 그렇게 하는것도 맞는거같아
그렇게 하는 것도 맞는게 아니라 그냥 맞는거야 말투 조까치도 하네 빡치게
응 맞는거같아 근데 교수님이 걸어주신 조건에는 (이 나오면 스택에 push 하고 )이 나오면 pop 하라는 조건이 있어서
자바는 몰라..ㅠㅠ
왜 음수가 되면 비정상이냐고? 그게 스택언더플로우야 , 스택크기를 그냥 숫자로 표시한 것일뿐 원리는 스택인데? 존나 이해할 생각도 안하고 그냥 무조건 push pop 이 눈에 띄어야 스택활용이냐? 으이그
미안해 내가 진짜 프로그래밍의 프 자도 몰라 진짜.. 스택 언더플로우는 어떤걸 말하는거야?
아 그렇구나 그니깐 스택에 아무것도 없는데 더 끄낼라고하면 그게 비정상이라서 \'비정상이다 이년아\' 를 프린트한다 이거지?
아.. 고마워 근데 나 자바는 하나도 몰라서..