Python · 슬라이싱·연습 문제

역순 스텝 슬라이싱

문제 설명PROBLEM

역순 스텝 슬라이싱

문제

values의 start 인덱스부터 stop을 제외하고 뒤로 stride칸씩 이동한 슬라이스를 반환하세요.

구현할 함수

reverse_stride(values, start, stop, stride) -> list

입력

JSON 객체 {"values": 배열, "start": 정수, "stop": 정수, "stride": 양의 정수}

입력 파싱과 결과 출력은 숨겨진 I/O 어댑터가 자동으로 처리합니다. 에디터에는 요구된 함수 또는 메서드 구현만 작성하세요.

출력

함수 반환값을 공백 없는 JSON 한 개로 출력합니다.

구현 조건

  • values[start:stop:-stride] 슬라이싱을 사용하세요.
  • reversed나 reverse를 사용하지 마세요.

공개 테스트

아래 테스트를 각각 독립된 프로세스로 실행합니다. 입력과 기대 출력은 실제 채점 순서와 같습니다.

#이름InputExpected output
1두 칸씩 역방향{"values":[0,1,2,3,4,5,6,7],"start":6,"stop":1,"stride":2}[6,4,2]
2한 칸씩{"values":[0,1,2,3,4],"start":4,"stop":0,"stride":1}[4,3,2,1]
3같은 경계{"values":["a","b","c","d"],"start":3,"stop":3,"stride":1}[]
개념 노트와 실수 포인트

슬라이싱

  • a[시작:끝:스텝], ⚠️ 끝 인덱스는 제외. 생략 가능: a[:3], a[2:].
  • 음수 인덱스: a[-1] 마지막, a[-2] 뒤에서 둘째.
  • a[::-1] 전체 역순, a[::2] 2칸씩.
  • ⚠️ 역순 스텝 a[6:1:-2] 는 6→2까지 -2씩(끝 1 제외).
  • 슬라이스에 할당하면 길이가 바뀔 수 있음: a[1:3]=[9,9,9].