알고리즘(57)
-
[알고리즘] 4949번: 균형잡힌 세상
0. 문제 4949번: 균형잡힌 세상 각 문자열은 마지막 글자를 제외하고 영문 알파벳, 공백, 소괄호("( )"), 대괄호("[ ]")로 이루어져 있으며, 온점(".")으로 끝나고, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마지막에 www.acmicpc.net 1. 문제 이해 문자열을 입력받는다. .이면 프로그램을 종료한다. 각 문자열마다 (, [는 스택에 push한다. 스택이 언더플로우가 아니라면 ), ]는 pop한다. 스택 언더플로우라면 no를 출력한다. 스택에 (, ]이 남아있다면 no를 출력한다. 스택이 비어있다면 yes를 출력한다. 2. 제출 가. 틀렸습니다. // 백준 4949번: 균형잡힌 세상 #include #include #include #include using nam..
2023.09.26 -
[알고리즘] 9012번: 괄호
0. 문제 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 1. 문제 이해 올바른 괄호 문자열인지 판단하여 YES나 NO를 출력하는 문제다. 올바른 괄호 문자열인지 판단하는 방법은 Stack을 활용하면 좋겠다. 여는 괄호 (는 스택에 저장한다. 닫는 괄호 )는 스택의 최상위 (를 삭제한다. 모든 문자에 대하여 실행했을 때 스택이 비어있다면 Yes 아니면 NO 2. 제출 //백준 9012번: 괄호 #include #include using namespace std; stack st..
2023.09.26 -
[알고리즘] 1436번: 영화감독 숍
0. 문제 1436번: 영화감독 숌 666은 종말을 나타내는 수라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타워 www.acmicpc.net 1. 문제 이해 666 1666 2666 3666 4666 5666 6660 6661 6662 6663 6664 6665 6666 6667 6668 6669 7666 8666 9666 10666 11666 12666 13666 14666 15666 16660 16662 16663 … ??. 26660 … ??. 36660 … ??. 56669 ??. 66600 ??. 66601 제일 단순한 방법은 1씩 더해가면서 연속으로 6이 3번 나오는 경우를 찾..
2023.09.26 -
[알고리즘] 2852번: NBA 농구
0. 문제 2852번: NBA 농구 첫째 줄에 골이 들어간 횟수 N(1 N; for(int i=0; i> tNum >> input; now = parse(input); if(score1>score2){ t1 += now - prevTime; }else if(score1score2){ t1 += 2880 - prevTime; }else if(score1
2023.09.16 -
[알고리즘] 3474번: 교수가 된 현우
0. 문제 3474번: 교수가 된 현우 첫째 줄에 테스트 케이스의 개수 T가 주어지고, 이어서 T개의 줄에 정수 N이 주어진다(1 N; while(N >= i){ ret += N/i; i*=5; } cout
2023.09.16 -
[알고리즘] 10709번: 기상캐스트
0. 문제 10709번: 기상캐스터 출력은 H 행으로, 각 행에는 공백으로 구분된 W 개의 정수를 출력한다. 출력의 i 번째 행 j 번째 정수 (1 ≦ i ≦ H, 1 ≦ j ≦ W) 는, 지금부터 몇 분후에 처음으로 구역 (i, j) 에 구름이 뜨는지를 표시 www.acmicpc.net 1. 문제 이해 0 : 처음에 ‘c’인 경우 1 ~ 99 : 처음은 ‘.’이지만 시간이 지나면서 구름이 뜨는 경우 → 처음은 ‘.’이고 왼쪽에 ‘c’가 있음. -1 : 처음은 ‘.’이지만 시간이 지나도 구름이 뜨지 않음 → 처음은 ‘.’이고 왼쪽에 ‘c’가 없음. H*W 크기의 배열에 입력값을 저장하고[0][0]에서부터 순회하면서 처리한다. ‘.’에 대한 각 행의 기본값은 -1이다. ‘c’를 만나면 그곳은 0으로 처리하..
2023.09.10 -
[알고리즘] 2870번: 수학숙제
0. 문제 2870번: 수학숙제 종이에서 찾은 숫자의 개수를 M이라고 하면, 출력은 M줄로 이루어져야 한다. 각 줄에는 종이에서 찾은 숫자를 하나씩 출력해야 한다. 이때, 비내림차순으로 출력해야 한다. 비내림차순은 내림차 www.acmicpc.net 1. 문제 이해 숫자와 알파벳 소문자로 되어있는 글자가 N 줄 있다. → 아스키코드 사용해서 숫자와 알파벳 구분 모든 숫자의 앞과 뒤에 문자가 있거나, 줄의 시작 또는 끝이어야 한다. → 숫자면 문자열에 추가. 알파벳이면 문자열이 비어있지 않다면 vector에 추가하고 문자열 초기화. 숫자의 앞에 0이 있는 경우에는 정리하면서 생략할 수 있다. 하지만 000은 0이다. → int로 변환하기. 숫자를 모두 찾은 뒤, 이 숫자를 비내림차순으로 정리해야 한다. →..
2023.09.06 -
[알고리즘] 4659번: 비밀번호 발음하기
0. 문제 4659번: 비밀번호 발음하기 좋은 패스워드를 만드는것은 어려운 일이다. 대부분의 사용자들은 buddy처럼 발음하기 좋고 기억하기 쉬운 패스워드를 원하나, 이런 패스워드들은 보안의 문제가 발생한다. 어떤 사이트들은 xvtp www.acmicpc.net 1. 문제 이해 모음(a,e,i,o,u) 하나를 반드시 포함하여야 한다. → for문으로 검사하기 모음이 3개 혹은 자음이 3개 연속으로 오면 안 된다. → 모음, 자음의 반복 횟수를 저장하고 for문으로 검사하기. 같은 글자가 연속적으로 두번 오면 안 되나, ee와 oo는 허용한다. → 최근 문자와 해당 문자의 반복 횟수를 저장하고 for문으로 검사하기. 2. 제출 //백준 4659번: 비밀번호 발음하기 #include using namespa..
2023.09.05