한 값은 왼쪽 시프트하고 다른 값은 오른쪽 시프트하세요.
void shift_results(unsigned int left_value, int left_by, unsigned int right_value, int right_by, unsigned int output[2])
left_value, left_by, right_value, right_by가 주어집니다. 시프트 수는 0~30입니다.
입력 파싱과 결과 출력은 숨겨진 I/O 어댑터가 자동으로 처리합니다. 에디터에는 요구된 함수 또는 메서드 구현만 작성하세요.
왼쪽 시프트 결과와 오른쪽 시프트 결과를 출력합니다.
아래 테스트를 각각 독립된 프로세스로 실행합니다. 입력과 기대 출력은 실제 채점 순서와 같습니다.
| # | 이름 | Input | Expected output |
|---|---|---|---|
| 1 | 대표 | 1 4 48 2 | 16 12 |
| 2 | 다른 이동량 | 3 2 32 3 | 12 4 |
| 3 | 0과 홀수 | 0 5 7 1 | 0 3 |
/: 정수끼리면 몫만 남고 소수점은 버림. 7/2 == 3. 실수가 필요하면 한쪽을 실수로 → 7/2.0.%: 정수 전용.a++(후위: 쓰고 증가) / ++a(전위: 증가 후 사용).f(a++, ++a))하면 결과가 정의되지 않음(컴파일러마다 다름). 문장을 나눠 추적하세요.* / % → + - → 비교 → 비트(& ^ |) → && ||. 헷갈리면 괄호!&AND |OR ^XOR ~NOT, <<n=×2ⁿ, >>n=÷2ⁿ.(int)3.9 == 3 (반올림 아님, 버림).코드를 작성하고 실행하면 공개 테스트 3개의 결과가 각각 표시됩니다.