아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

허버트

시간 제한1초메모리 제한128 MB

요약
시작 방향을 기준으로 최대 n번의 이동과 회전으로 로봇이 도착할 수 있는 격자 칸 수를 셉니다.
난이도

보통10점 중 5점

유형
수학, 조합론
정답자
아직 제출이 없습니다

문제

허버트는 무한히 펼쳐진 2차원 격자 위에서 로봇 한 대를 조종하는 게임이다. 쓸 수 있는 명령은 세 가지다.

  • s: 지금 보고 있는 방향으로 한 칸 전진한다.
  • l: 제자리에서 반시계 방향으로 90도 회전한다.
  • r: 제자리에서 시계 방향으로 90도 회전한다.

회전을 포함해 명령을 하나 쓸 때마다 이동 횟수를 1 소모한다. 로봇은 원점에서 정해진 한 방향을 보고 출발한다.

이 게임을 한참 하다 보면 이동 횟수에 상한을 두었을 때 로봇이 닿을 수 있는 칸이 몇 개인지 궁금해진다. 이동을 최대 nn번 쓸 수 있을 때 로봇이 멈출 수 있는 서로 다른 칸의 개수를 구하시오.

입력

첫 줄에 테스트 케이스의 개수 tt (1≤t≤1001 \le t \le 100)가 주어진다.

이어지는 tt개의 줄에 정수 nn (0≤n≤1090 \le n \le 10^9)이 한 줄에 하나씩 주어진다. nn은 그 테스트 케이스에서 쓸 수 있는 이동 횟수의 상한이다.

출력

각 테스트 케이스마다 로봇이 닿을 수 있는 칸의 개수를 한 줄에 하나씩 출력한다.

예제1

  1. 예제 1

    입력
    4
    0
    1
    2
    3
    
    예상 출력
    1
    2
    5
    11