만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

계산 - 과제 9

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

요약
제한된 명령어만 사용해 실수 16개를 입력받아 오름차순으로 출력하는 명령어 열을 작성하는 문제입니다.
난이도

보통10점 중 5점

유형
정렬, 구현
정답자
아직 제출이 없습니다

문제

xtx_t을 tt번째 명령의 결과라고 하자. 사용할 수 있는 명령, 문법, 결과 xtx_t는 아래와 같다.

이름연산자매개변수효과
입력I없음터미널에서 실수를 읽어 xtx_t로 저장한다
출력Oiixix_i를 터미널에 출력하고, xt=xix_t = x_i로 둔다
덧셈+iji \quad jxt=xi+xjx_t = x_i + x_j
상수 더하기Cici \quad cxt=xi+cx_t = x_i + c
부호 반전-iixt=−xix_t = -x_i
왼쪽 시프트<iki \quad kxt=xi⋅2kx_t = x_i \cdot 2^k
오른쪽 시프트>iki \quad kxt=xi⋅2−kx_t = x_i \cdot 2^{-k}
SSiixt=s(xi)x_t = s(x_i)
비교Piji \quad jxi<xjx_i < x_j이면 xt=−1x_t = -1, xi=xjx_i = x_j이면 xt=0x_t = 0, xi>xjx_i > x_j이면 xt=1x_t = 1
최댓값Miji \quad jxi>xjx_i > x_j이면 xt=xix_t = x_i, 그렇지 않으면 xt=xjx_t = x_j
곱셈*iji \quad jxi=xi⋅xjx_i = x_i \cdot x_j

여기서 s(x)=11+e−xs(x) = \frac{1}{1 + e^{-x}}이고, e=2.718281828459045…e = 2.718281828459045\ldots는 자연로그의 밑이다.

P, M, * 연산자를 사용하면 감점이 있다. 자세한 내용은 아래 채점 항목을 참고하라.

연산은 유한 정밀도로 수행된다. 결과는 소수점 아래 90자리까지만 정확하며, 그 이하는 반올림된다. 마찬가지로 상수 더하기 명령의 인자 cc는 소수부가 최대 90자리까지만 가능하다.

왼쪽 및 오른쪽 시프트 명령에서 kk는 10000을 넘지 않는 음이 아닌 정수여야 한다.

각 명령에서 매개변수 ii와 jj는 현재 명령 번호 tt보다 작아야 한다. 명령은 순서대로 하나씩 실행된다.

과제 1: ∣a∣,∣b∣≤109|a|, |b| \leq 10^9인 a,ba, b가 주어진다. aa와 bb의 소수부는 최대 9자리이다. −2a−2b-2a-2b를 구하라.

과제 2: ∣a∣≤109|a| \leq 10^9인 aa가 주어진다. aa의 소수부는 최대 9자리이다. 11+e17a\frac{1}{1+e^{17a}}를 구하라.

과제 3: ∣a∣≤109|a| \leq 10^9인 aa가 주어진다. aa의 소수부는 최대 9자리이다. a<0a < 0이면 −1-1, a=0a = 0이면 00, a>0a > 0이면 11을 구하라.

과제 4: ∣a∣≤109|a| \leq 10^9인 aa가 주어진다. aa의 소수부는 최대 9자리이다. 절댓값 ∣a∣|a|를 구하라.

과제 5: 각 ai∈{0,1}a_i \in \{0,1\}인 a1,…,a32a_1, \ldots, a_{32}가 주어진다. a1a2⋯a32a_1a_2 \cdots a_{32}를 이진수로 보고, a1a_1은 최상위 비트, a32a_{32}는 최하위 비트이다. 이 수의 십진수 값을 구하라.

과제 6: 0≤a<2320 \leq a < 2^{32}인 정수 aa가 주어진다. aa의 이진 표현을 나타내는 정수 32개를 출력하라. 최상위 비트를 먼저, 최하위 비트를 마지막에 출력한다. 이진 표현이 32자리보다 짧으면 앞에 0을 채운다.

과제 7: 0≤a,b<2320 \leq a, b < 2^{32}인 정수 a,ba, b가 주어진다. aa와 bb의 비트 단위 XOR을 구하라.

과제 8: ∣a∣≤109|a| \leq 10^9인 aa가 주어진다. aa의 소수부는 최대 9자리이다. a10\frac{a}{10}을 출력하라.

과제 9: ∣ai∣≤109|a_i| \leq 10^9인 a1,…,a16a_1, \ldots, a_{16}이 주어진다. 각 aia_i의 소수부는 최대 9자리이다. a1,…,a16a_1, \ldots, a_{16}을 오름차순으로 정렬한 실수 16개를 출력하라.

과제 10: 0≤a,b<2320 \leq a, b < 2^{32}, 1≤m<2321 \leq m < 2^{32}인 정수 a,b,ma, b, m이 주어진다. a×ba \times b를 mm으로 나눈 나머지, 즉 a×b mod ma \times b \bmod m을 구하라.

출력

ii번째 줄은 ii번째 명령을 설명한다. 먼저 연산을 나타내는 문자를 출력한다. 그다음 매개변수를 나타내는 정수를 0개 이상 출력한다. 연산자와 매개변수 사이, 그리고 매개변수끼리는 공백 하나로 구분한다.

최대 10410^4줄까지 출력할 수 있다.

예제1

  1. 예제 1

    입력
    예상 출력
    I
    + 1 1
    - 2
    I
    + 4 4
    - 5
    + 3 6
    - 7
    - 8
    O 9