Learn From Failure

고정 헤더 영역

글 제목

메뉴 레이어

Learn From Failure

메뉴 리스트

  • tag
  • 분류 전체보기 (112)
    • Algorithm (91)
    • NestJS (2)
    • Java (6)
    • Spring (8)
    • AWS (1)
    • DBMS (2)

검색 레이어

Learn From Failure

검색 영역

컨텐츠 검색

Algorithm

  • 10845. 큐

    2024.11.28 by aeongiii

  • 12605. 단어 순서 뒤집기

    2024.11.28 by aeongiii

  • 17608. 막대기

    2024.11.28 by aeongiii

  • 4949. 균형잡힌 세상

    2024.11.27 by aeongiii

  • 3986. 좋은 단어

    2024.11.27 by aeongiii

  • 10866. 덱

    2024.11.27 by aeongiii

  • 27497. 알파벳 블록

    2024.11.27 by aeongiii

  • 2869. 달팽이는 올라가고 싶다

    2024.11.20 by aeongiii

10845. 큐

1. 문제 분석     1) N개의 명령이 주어진다.     2) push 명령의 경우 정수가 함께 입력된다.     3) 각 명령을 수행하면서, "출력해야 하는 명령"이 주어질 때 한 줄에 하나씩 출력한다. 2. 제약 조건     1     1 3. 의사결정     1) N을 입력받는다.     2) 정수 데크를 구현한다. 문장을 입력받으면 공백으로 구분하여 배열에 저장한다.     3) switch문으로 각 명령 수행을 작성한다.         (1) push의 경우 배열[1]에 들어간 정수를 함께 처리한다.         (2) push를 제외한 나머지 연산은 모두 출력이 필요하다. 한 줄에 하나씩 출력해야 하므로 \n을 누적한다. 4. 문제 해결     1) queue.poll()  : 큐의 첫번..

Algorithm 2024. 11. 28. 14:53

12605. 단어 순서 뒤집기

1. 문제 분석     1) 첫줄에 N이 주어지고, N개의 영단어 문장이 주어진다. 각 문장은 알파벳과 스페이스로 이루어져 있다.     2) 스페이스는 문장의 처음과 끝에 위치하지 않는다.     3) 각 영단어 문장에 대해, 단어를 역순으로 출력한다.     4) 출력 시 "Case #X:"로 시작한다. 2. 제약 조건     N = 5     1 3. 의사결정     1) BufferedReader를 사용하여 N을 입력받는다.     2) N만큼 for문을 돌린다.         (1) 스택을 선언한다.         (2) 한문장 전체를 입력받고, 공백으로 구분하여 스택에 넣는다.         (3) "Case #X:"와 함께 스택에 있는 것들을 꺼내 출력할 문장을 완성한다. (x = i)   ..

Algorithm 2024. 11. 28. 12:04

17608. 막대기

1. 문제 분석     1) 각각 높이가 h인 N개의 막대기를 일렬로 세운 뒤, 가장 오른쪽(마지막)에 있는 막대기보다 높은 막대기의 개수를 구한다.     2) 구한 수에 +1 (가장 오른쪽 막대기) 하여 출력한다. 2. 제약 조건     2     1 3. 의사결정     1) BufferedReader를 사용하여 N을 입력받는다.     2) 요소를 입력한 순서와 반대 방향으로 꺼내면서 높이를 체크하기 때문에 스택을 사용하자.     3) 한번에 모든 줄을 입력받고, 공백으로 구분하여 각 요소를 스택에 저장한다.     4) 마지막 요소부터 스택에서 하나씩 꺼내면서, "마지막 요소"를 기준으로 더 숫자가 큰 막대가 있으면 count++.     5) count 변수는 기본 1로 설정한다. (마지막 ..

Algorithm 2024. 11. 28. 10:33

4949. 균형잡힌 세상

1. 문제 분석     1) 각 문장을 입력받는다. "."가 나올때까지 순차적으로 입력받는다.     2) 입력받은 문장에 대하여 한글자씩 검사하면서 왼쪽 괄호와 오른쪽 괄호를 짝짓는다.     3) 정확히 균형을 이룬다면 yes 출력, 그렇지 않다면 no 출력 2. 제약 조건     문장의 길이 3. 의사결정     1) BufferedReader를 사용하여 온점 하나 "."만 입력될때까지 문장을 받는다.     2) 각 문장을 받으면, 하나씩 검사하면서 괄호가 있는지 검사한다.         -> 왼쪽 괄호 [, ( 가 있으면 스택에 쌓고, 오른쪽 괄호 ), ]가 있으면 왼쪽 괄호를 스택에서 없앤다.     3) 단어의 마지막에 온점이 나오면 한 문장 검사를 끝낸다. => 검사 안해도 된다! 어차피 ..

Algorithm 2024. 11. 27. 16:26

3986. 좋은 단어

일단 이번에는 문제를 이해하는것부터 오래걸렸다. 1. 문제 분석     1) N개의 단어를 받아서, 각 단어가 "좋은 단어"인지 확인한다.     2) 단어는 A와 B로만 구성되어있다.     3) A와 B로 이루어진 단어를 한 글자씩 검사하여, 각 글자가 교차없이 짝지어지는지 확인한다.     4) 좋은 단어의 개수를 세서 출력한다. 2. 제약 조건     1     단어의 길이는 2와 100,000 사이     모든 단어 길이의 합 3. 의사결정     0) 좋은 단어가 되려면 스택 안에 하나씩 쌓고 없앴을 때 남은것이 없어야 한다. 없앨 수 없거나, 남은것이 있다면 좋은 단어 X     1) N을 입력받고 N만큼 for문을 돌린다.     2) for문 안에서 단어를 받은 뒤, 단어의 길이만큼 돌면..

Algorithm 2024. 11. 27. 15:03

10866. 덱

1. 문제 분석     1) 덱을 구현한다.     2) N을 입력받고, N for문 돌린다.     3) 한줄씩 입력받아서 명령을 수행한다. 2. 제약 조건     1     시간 제한 0.5초 3. 의사결정     1) N을 입력받는다. 덱을 하나 만든다.     2) N만큼 for문을 돌린다.     3) 한줄씩 받아서 명령 처리한다. switch가 나을지 메서드 따로하는게 나을지...         => switch문과 메서드 따로하는 방식 간의 시간 차이는 크지 않다고 한다. switch 사용하기. 4. 문제 해결     1) sout을 여러번 호출하는 경우, 매번 flush가 실행되 출력 성능이 저하된다.     => sout 대신 Stringbuilder를 사용해 값을 누적시켰다가 마지막에 ..

Algorithm 2024. 11. 27. 14:05

27497. 알파벳 블록

정말 많은 시행착오가 있었다.1. 문제 분석     1) 총 N번 버튼을 누른다. 누른 버튼에 대한 정보는 [1 c]와 같이 [버튼+해당문자]로 주어진다.     2) 버튼 : 1이면 맨 뒤, 2면 맨 앞에 블록 추가. 3이면 가장 최근에 추가된 블록 제거.     3) c는 알파벳 대문자 혹은 소문자이다.     4) 빈 문자열로 시작하고, 빈 문자열일때 3을 누를 경우 동작x     5) 완성된 문자열을 출력한다. 2. 제약 조건     1 3. 의사결정     1) N을 입력받는다.     2) 요소의 삽입, 삭제가 빈번하므로 ArrayDeque가 좋겠다. (인덱스에 의한 접근 불가)     3) N만큼 for문을 돌면서 주어진대로 문자열을 수정한다.         (1) [1 c]가 주어질 경우,..

Algorithm 2024. 11. 27. 12:22

2869. 달팽이는 올라가고 싶다

1. 문제 분석     1) A미터 올라가고, B미터 미끄러지는 달팽이가 있다.     2) V미터까지 올라가려면 며칠이 걸리는가? 2. 제약 조건     1     A, B, V는 정수이다. 3. 의사결정     1) A, B, V를 입력받는다.     2) 달팽이의 위치에 +A, -B를 반복한다. (V 이상될때까지)     3) 반복할때마다 count++ 한다.     4) count의 값을 출력한다.     ====> 이렇게 반복문으로 계산했더니 시간 초과로 틀렸다ㅠㅠㅠ4. 문제 해결     1) 마지막 날에는 밤에 미끄러지지 않는다. 이미 낮에 정상에 도착했기 때문에.        따라서 반대로, 전체 올라가야 할 거리에서 마지막 날에 미끄러지는 거리를 제외하면 V-B이다.     2) 하루당 올..

Algorithm 2024. 11. 20. 21:11

추가 정보

인기글

최신글

페이징

이전
1 ··· 6 7 8 9 10 11 12
다음
TISTORY
Learn From Failure © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바