부호없는 32 비트 정수에 대한 n
모듈로 12
를 계산 합니다.
규칙:
n
0에서 23 사이의 모든 숫자에 대해 작동해야합니다 . 다른 숫자는 선택 사항입니다.- 단지 사업자 중 하나를 사용해야합니다
+-*
,~&^|
또는<<
,>>
일반적으로 32 명 비트하는 uint에 정의 된 바와 같다. - 임의의 수의 상수 uint를 사용할 수 있습니다.
- 배열을 포함한 어떤 형태의 포인터 나
if
삼항 연산자 또는 "보다 큼"연산자와 같은 if 문으로 컴파일되는 구문을 포함한 명령문을 사용할 수 없습니다 .
점수 :
- 연산자
+ -
와 비트 연산자~ & ^ | << >>
(NOT, AND, XOR은, OR, 비트 이동은)의 점수를주고1
,*
점수를 제공합니다2
. - 총점이 가장 낮습니다.
for i in x:y:z, .dostuff
?
n % 12
해커의 기쁨과 같이 곱셈과 변화에 최적화 할 것이므로 이는 사소한 일입니다. 어셈블리를 출력하고 다음을 참조하십시오
+-*
더하기, 빼기, 곱하기를 이해 합니다.~&^|
비트 NOT, AND, XOR, OR; 및<< >>
bitshifts입니다.