Algorithm

    백준 14502 // 3중반복문 ijk=>조합구현, a조작할필요없음(!v만으로 안전지역)

    14502번: 연구소 (acmicpc.net) 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net a[][]=1 벽세우기 바이러스퍼뜨르기(for'2' dfs visit[there]=1), 안전지역세기(a==0 and virus_not_visit) a[][]=0 벽초기화 ...반복 #include using namespace std; typedef long long int ll; int n,m,t,ret,a[10][10],v[10][10]; vector vir,w; int dy[] = {1,0,-1,0}; int dx[] = {..

    백준 4949 // 공백포함 한줄입력은 getline(cin,str), 괄호체크 algoritm

    4949번: 균형잡힌 세상 (acmicpc.net) 4949번: 균형잡힌 세상 각 문자열은 마지막 글자를 제외하고 영문 알파벳, 공백, 소괄호("( )"), 대괄호("[ ]")로 이루어져 있으며, 온점(".")으로 끝나고, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마지막에 www.acmicpc.net 마지막끝은 문자열이 "."이면 진짜끝이다. " ."은 끝이아님. #include using namespace std; typedef long long int ll; int t; char c; stack s; string str; int main() { ios_base::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL); while (true) { ge..

    백준 9012 //괄호검사는 stack

    9012번: 괄호 (acmicpc.net) 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net '(' ')'만 검사함에 주의 ')' '('는 틀린것임. #include using namespace std; typedef long long int ll; int t; char c; stack s; string str; int main() { ios_base::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL); cin >> t; while (t--)..

    백준 2582 //시간문제는 초단위로 통일하라, string to int(stoi), %02d(0채우기,2칸)

    2852번: NBA 농구 (acmicpc.net) 2852번: NBA 농구 첫째 줄에 골이 들어간 횟수 N(1 n; while (n--) { cin >> t >> s; t1 = s.substr(0, 2); t2 = s.substr(3, 5); int start = stoi(t1) * 60 + stoi(t2); for (int i = start; i b[i]) f[i] = 1; else if (a[i] < b[i]) f[i] = 2; } for (int i = 0; i < 48 * 60; ++i) { if (f[i] == 1)..

    백준 3474 //idea를 위해 table을 그려라

    3474번: 교수가 된 현우 (acmicpc.net) 3474번: 교수가 된 현우 첫째 줄에 테스트 케이스의 개수 T가 주어지고, 이어서 T개의 줄에 정수 N이 주어진다(1 > t; while (t--) { int ret2=0, ret5=0; cin >> a; for (int i = 2; i

    백준 10709 //따닥따닥 입력받기 , 규칙발견, 구현

    10709번: 기상캐스터 (acmicpc.net) 10709번: 기상캐스터 출력은 H 행으로, 각 행에는 공백으로 구분된 W 개의 정수를 출력한다. 출력의 i 번째 행 j 번째 정수 (1 ≦ i ≦ H, 1 ≦ j ≦ W) 는, 지금부터 몇 분후에 처음으로 구역 (i, j) 에 구름이 뜨는지를 표시 www.acmicpc.net * 따닥따닥 입력받기 1.문자열[index] cin >> s; for(int j = 0; j > s; for (int j = 0; j < x; ++j) { c = s.at(j); if (c == 'c') { a[i][j] = 1; v[i][..

    백준 17071 //bfs, flood fill, 완탐x

    17071번: 숨바꼭질 5 (acmicpc.net) 17071번: 숨바꼭질 5 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 500,000)에 있고, 동생은 점 K(0 ≤ K ≤ 500,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 www.acmicpc.net 문제1 : 0.25초 ->완탐불가능 해결 : 동생이방문할곳 방문됫는지 체크 -> 수빈이가 이미방문-> 수빈이는 2초간격으로 계속 머무르기 가능 -> 그 level(초)가 정답 if (v[level % 2][k]) { ok = 1; break; } 문제2 : x+-1로 인해 중복방문발생 해결:nx방문체크 -> 방문이면 continue; if (nx > 500000 || nxbr..

    백준 2870 //vector<string>정렬은 커스텀으로, string토큰화

    2870번: 수학숙제 (acmicpc.net) 2870번: 수학숙제 종이에서 찾은 숫자의 개수를 M이라고 하면, 출력은 M줄로 이루어져야 한다. 각 줄에는 종이에서 찾은 숫자를 하나씩 출력해야 한다. 이때, 비내림차순으로 출력해야 한다. 비내림차순은 내림차 www.acmicpc.net * 토큰화 for(s.len){ 숫자면 ret누적 아니고 토큰잇으면 ->go }if(남음)->go //뒤에 su00이런경우 처리 * go() 1.앞의 0지우기 2.모두지웟는데 빈칸 == 000이런경우 ret=0 3.v.push(ret) 4.ret초기화 #include using namespace std; typedef long long int ll; int n, c, a[1004]; map mp; //인덱스,모음(1)자음(..