문제2B-오름차순인가? - 알고리즘 문제해결기법 입문
알고리즘 문제해결기법 입문
    • 01
      About Course
    • 공부하는 방법
      문제 모범 답안
      수강생 전용 Slack
      공식 오프라인 강의
    • 02
      0. Introduction & Tutorial
    • 알고리즘과 자료구조
      문제 해결하기
      약속하기
      문제의 구성
      문제0A-출력해보기
      문제0B-입력받아보기
      문제0C-반복해보기
      문제0D-저장해보기
      문제0E-테스트케이스
    • 03
      1. 코드와 친해지기
    • 챕터1 강의노트 (임시)
      코드와 친해지기
      반복문과 친해지기
      문제1A-최대값 함수
      문제1B-배열의 최대값
      문제1C-카운팅하기
      문제1D-합 구하기1
      문제1E-합 구하기2
      문제1F-탐색하기1
      문제1G-탐색하기2
      문제1H-탐색하기3
      문제1I-선택정렬 구현하기
      문제1J-합 구하기3
      단원 되짚어보기 & 해설
    • 04
      2. 알고리즘의 연산량
    • 연산량과 시간복잡도
      챕터2 강의노트 (임시)
      실제 연산량 줄이기
      문제2A-도토리 키재기
      문제2B-오름차순인가?
      문제2C-다양성
      문제2D-문자열의 비교
      문제2E-소수의 판별
      문제2F-데스티니
      문제2G-버블정렬 구현하기
      문제2H-픽셀 수 세기
      문제2I-정주행
      문제2J-승부 조작
      단원 되짚어보기
    • 05
      3. 공간 활용하기
    • 배열의 특징
      챕터3 강의노트(임시)
      배열 활용하기
      문제3A-전화번호
      문제3B-페인트
      문제3C-응모
      문제3D-피보나치 나머지
      문제3E-색종이
      문제3F-과유불급
      문제3G-팬미팅
      문제3H-두 카드
      문제3I-세 카드
      문제3J-네 카드
    • 06
      4. 자주 사용되는 수학 알고리즘
    • 챕터4 강의노트(임시)
      문제4A-스도쿠 보드
      문제4B-Probing
      문제4C-최대공약수와 최소공배수
      문제4D-수열의 순환
      문제4E-소인수 분해
      문제4F-소수 세기
      문제4G-배열 흔들기
      문제4H-카잉 달력
      문제4I-골드바흐의 추측
      문제4J-공약수 게임
    • 07
      5. 구현 훈련하기
    • 문제5A-놀이 공원
      문제5B-거대 놀이 공원
      문제5C-레이저 타워
      문제5D-레이저 타워 건설하기
      문제5E-숫자 채우기1
      문제5F-숫자 채우기2
      문제5G-숫자 채우기3
      문제5H-두 직사각형
      문제5I-두 선분
      문제5J-로봇 청소기
      문제5K-고성능 로봇 청소기
      문제5L-NBA농구
      문제5M-와일드 카드
      문제5N-패턴 검사
      문제5O-단어 퍼즐
      문제5P-이름 짓기
    • 08
      6. 자료구조 활용하기
    • 챕터6 강의노트 (임시)
      문제6A-괄호 문자열
      문제6B-탑
      문제6C-히스토그램
      문제6D-조세퍼스 문제
      문제6E-폭탄 제거
      문제6F-폭탄 제거 순서 정하기
      문제6G-불안정 지역
      문제6H-중복 제거하기
      문제6I-정사각형
      문제6J-빈도수 세기
      문제6K-시장 추천하기
      문제6L-배열 합치기
      문제6M-이중 우선순위 큐
      문제6N-중앙값 큐
      문제6O-피자 하와이
    • 09
      7. 재귀 함수와 분할 정복
    • 챕터7 강의노트(임시)
      [문제07A] 모든 조합 출력하기
      [문제07B] 하노이의 탑
      [문제07C] 단지 번호 붙이기
      [문제07D] Merge Sort 구현하기
      [문제07E] Quick Sort 구현하기
      [문제07F] 히스토그램
      [문제07G] Counting Inversion Pairs
      [문제07H] Finding Closet Pair
    • 10
      8. DFS/BFS
    • 챕터8 강의노트(임시)
      [문제08A] - 그래프의 탐색 1
      [문제08B] - 그래프의 탐색 2
      [문제08C] - 그래프의 최장 경로
      [문제08D] - 그래프의 최단 경로
      [문제08E] - 바이러스
      [문제08F] - 미로 탈출하기
      [문제08G] - 토마토
      [문제08H] - 소수 경로
      [문제08I] - 스도쿠 보드 채우기
      [문제08J] - N Queen
    • 11
      9. 그래프 알고리즘
    • 챕터9 강의노트(임시)
      [문제09A] 해밀턴 경로
      [문제09B] 외판원 순회 문제
      [문제09C] 한 붓 그리기
      [문제09D] 그래프의 연결성
      [문제09E] 최소 신장 트리 1
      [문제09F] 최소 신장 트리 2
      [문제09G] 그래프의 최단 거리
      [문제09H] 그래프의 최단 거리 2
    • 12
      10. 동적 계획법
    • [문제10A] 가장 긴 부분 증가수열 (LIS)
      챕터10 강의노트(임시)
      [문제10B] 팬스 수리하기
      [문제10C] 아르바이트
      [문제10D] 회선 설치하기
      [문제10E] 2차원 누적합
      [문제10F] 퀼팅(Quilting)
      [문제10G] 가장 긴 공통 부분 문자열 (LCS)
      [문제10H] Ah-choo!
      [문제10I] 곱하기는 귀찮아
      [문제10J] 올바른 괄호 문자열
      [문제10K] 배낭 문제 (Knapsack Problem)
      [문제10L] 7 Segment Display
    • 13
      11. 문제를 푸는 다른 방법
    • 챕터11 강의노트(임시)
      [문제11A] 지하철을 빠르게 빠르게
      [문제11B] 감시 로봇
      [문제11C] 복도 통과하기
      [문제11D] Selling Cells
      [문제11E] 인구조사
      [문제11F] 그래프 최소 분할
    • 14
      12. 문자열 알고리즘
    • 챕터12 강의노트 (임시)
      [문제12A] Rabin Karp
      [문제12B] KMP
      [문제12C] 실패함수 계산하기
      [문제12F] Trie 구현하기
    문제2B-오름차순인가?
    배우기
    실습 내용
    배우기
    문제2B-오름차순인가?
     항상 데이터 전체가 특정 조건을 만족할 지 검사해보아야 할 필요는 없습니다. 그 점을 생각해보며 최대한 효율적인 풀이를 생각해봅시다.
    실습 내용

     그룹을 관리하는 리더라는 직위는 절대 쉬운 것이 아니다. 외국의 한 유명한 여자 대학교인 질레보르(Zylevol)대학교에는 한국인 유학생 수정이와 예인이가 다니고있다. 수정이는 학생회장으로서 학교 행사마다 학생들을 통솔하는 역할을 맡고 있다. 이번 학교 행사에서도 학생회장 수정이는 학생들을 통솔하는 역할을 맡게 되었다. 이번 행사에서는 안무 준비를 위하여 각 학생들은 키가 작은 학생부터 큰 순서대로 일렬로 서야 한다. 하지만 전 날에 먹은 우유의 탓으로 수정이가 몸져 눕게되자, 평소 자신도 학생 회장을 잘 할 수 있다는 자신감에 가득 차 있던 예인이가 대행을 자원했다.

     예인이는 이리저리 뛰어다니며 학생들을 일렬로 세웠으나, 이 많은 학생들이 정말로 키 순으로 서 있는지 확신이 서지 않았다. 당신은 예인이를 도울 수 있도록 학생들이 실제로 키에 대하여 오름차순으로 서 있는지 판별해주는 프로그램을 작성해주려고 한다.


    입력 형식

     첫 줄에는 학생의 수 N이 주어진다. N은 1이상 10만 이하의 자연수이다.

    두 번째 줄에는 공백으로 구분된 학생들의 키가 총 N개 주어진다. 각 학생의 키는 마이크로미터 단위로 측정하여 1이상 2,000,000 이하의 자연수이다.


    출력 형식

     첫 줄에 학생들의 키가 오름차순으로 정렬되어 있는지 여부를 YES 혹은 NO로 출력한다.

    • YES - 각 학생들의 키가 오름차순으로 정렬되어있다.
    • NO - 그렇지 않다
    입/출력 예시
     
    :
    공백
    :
    줄바꿈
    예시 1
    입력
    5
    1 2 3 5 4
    출력
    NO
    ⋇ 입출력 형식을 잘 지켜주세요
    배우기
    실습 내용
    Q & A
    궁금한 점이나 수업 내용 중 어려웠던
    부분에 대해 질문해보세요.
    이 강의에 관한 질문(0)