계산 - 과제 6
시간 제한1초메모리 제한1024 MB
제한된 명령어만으로 10개의 과제를 계산하는 프로그램을 작성합니다. 과제에는 XOR, 곱의 나머지, 실수 16개 정렬이 포함됩니다.
문제
아래 명령어만 사용하여 문제를 해결하는 프로그램을 작성한다. 를 번째 명령의 결과라고 하자. 사용할 수 있는 명령, 문법, 결과 는 다음과 같다.
의 정의는 아래와 같다. 여기서 는 자연로그의 밑이다.
P, M, * 연산자를 사용하면 감점이 있다. 자세한 내용은 아래 '채점' 부분을 참고한다.
명령은 순서대로 하나씩 실행된다. 각 명령에서 인자 와 는 현재 명령 번호 보다 작아야 한다. 연산은 유한한 정밀도를 가진다. 결과는 소수점 아래 90자리까지만 정확하며, 그 이하는 반올림된다. 상수 더하기 명령의 인자 는 소수 부분이 최대 90자리까지 가능하다. 왼쪽 시프트와 오른쪽 시프트에서 는 10000 이하의 0 이상 정수여야 한다.
과제
- 과제 1: 가 주어진다. 이고, 의 소수 부분은 최대 9자리이다. 를 계산한다.
- 과제 2: 가 주어진다. 이고, 의 소수 부분은 최대 9자리이다. 를 계산한다.
- 과제 3: 가 주어진다. 이고, 의 소수 부분은 최대 9자리이다. 이면 , 이면 , 이면 을 계산한다.
- 과제 4: 가 주어진다. 이고, 의 소수 부분은 최대 9자리이다. 절댓값 를 계산한다.
- 과제 5: 가 주어지며 각 이다. 를 이 최상위 비트, 가 최하위 비트인 2진수로 보고, 그 값을 10진수로 계산한다.
- 과제 6: 정수 가 로 주어진다. 를 2진수로 나타낸 정수 32개를 출력한다. 가장 높은 비트부터 먼저 출력하고, 가장 낮은 비트를 마지막에 출력한다. 2진수 표현이 32자리보다 짧으면 앞에 0을 채운다.
- 과제 7: 정수 가 로 주어진다. 와 의 비트 단위 XOR을 계산한다.
- 과제 8: 가 주어진다. 이고, 의 소수 부분은 최대 9자리이다. 을 출력한다.
- 과제 9: 이 주어진다. 이고, 각 의 소수 부분은 최대 9자리이다. 을 오름차순으로 정렬한 실수 16개를 출력한다.
- 과제 10: 정수 이 주어진다. 이고 이다. 를 으로 나눈 나머지, 즉 을 계산한다.
출력
번째 줄은 번째 명령을 설명한다. 먼저 연산을 나타내는 문자 하나를 출력한다. 그다음 인자를 나타내는 정수를 0개 이상 출력한다. 연산자와 인자 사이, 그리고 인자들 사이는 공백 하나로 구분한다.
최대 줄까지 출력할 수 있다.