(백준/Kotlin) 10811번 : 바구니 뒤집기

2021. 10. 18. 10:09·CodingTest

난이도: Bronze 2

프로그래밍 언어: Kotlin

문제명: 바구니 뒤집기

푼일자: 2021년 10월

 

주소: https://www.acmicpc.net/problem/10811

 

문제풀기

1차 제출 코드입니다.

 

import java.util.*

fun main() = with(System.`in`.bufferedReader()) { // 바구니 뒤집기
    val (N, M) = readLine().split(" ").map { it.toInt() }
    val arr = IntArray(N + 1) { it }
    repeat(M) {
        val stack = Stack<Int>()
        val (i, j) = readLine().split(" ").map { it.toInt() }
        for (m in i..j) stack.push(arr[m])
        for (m in i..j) arr[m] = stack.pop()
    }

    print(arr.copyOfRange(1, arr.size).joinToString(" "))
}

 

다른 소스코드에서 참고한 계산법을 적용하여 다시 풀어보았습니다.

fun main() = with(System.`in`.bufferedReader()) { // 바구니 뒤집기
    val (N, M) = readLine().split(" ").map { it.toInt() }
    val arr = IntArray(N + 1) { it }
    repeat(M) {
        var (i, j) = readLine().split(" ").map { it.toInt() }
        while(i < j) {
            val v = arr[i]
            arr[i++] = arr[j]
            arr[j--] = v
        }
    }

    print(arr.copyOfRange(1, arr.size).joinToString(" "))
}

 

 

드라마틱 하지는 않지만 효과는 있습니다.

반응형
저작자표시 비영리 (새창열림)
'CodingTest' 카테고리의 다른 글
  • (백준/Kotlin) 11650번 : 좌표 정렬하기
  • (백준/Kotlin) 1225번 : 이상한 곱셈
  • (백준/Kotlin) 16171번 : 나는 친구가 적다 (Small)
  • (백준/Kotlin) 9469번 : 폰 노이만
Kua
Kua
정보 공유, 개인 정리 공간 입니다.
  • Kua
    Kua's Miscellaneous
    Kua
    • 분류 전체보기 (185)
      • 대문 (2)
      • Tips (25)
        • Chrome (2)
        • Windows (4)
        • IDE (3)
        • 기타 (16)
      • CodingTest (44)
      • Language (20)
        • PHP (5)
        • C# (7)
        • Java (1)
        • Kotlin (7)
      • Framework & Runtime (16)
        • SpringBoot (12)
        • Node.js (2)
        • Vue.js (1)
        • Gradle (1)
      • DevOps (13)
        • Linux (1)
        • Docker (4)
        • Kubernetes (2)
        • Apache Kafka (1)
        • AWS (1)
      • 일상다반사 (53)
        • 도서 (1)
        • 개발 (8)
        • 후기 - IT (7)
        • 후기 - 일상 (13)
        • 차가리 (4)
        • 방송통신대학교 (4)
        • 음식 (2)
      • Games (12)
        • Minecraft (7)
        • VR (2)
        • 그외 (3)
  • 최근 글

  • 인기 글

  • 태그

    minecraft
    Algorithm
    bronze1
    github
    후기
    갤럭시
    java
    error
    Silver5
    Windows
    codingtest
    백준
    bronze2
    c#
    코딩테스트
    Kotlin
    Plugin
    spring
    알고리즘
    Spring Boot
  • 전체
    오늘
    어제
  • hELLO· Designed By정상우.v4.10.0
Kua
(백준/Kotlin) 10811번 : 바구니 뒤집기
상단으로

티스토리툴바