이 퍼즐은 배열의 모든 숫자를 0으로 변경해야 하는 배열 기반 퍼즐입니다. 배열의 요소 중 하나는 0이고 다른 요소는 0일 수도 있고 아닐 수도 있습니다.
이 퍼즐을 풀기 위해 프로그램은 0이 아닌 요소를 찾아 0으로 변경해야 합니다.
부울 배열 퍼즐을 푸는 데 필요한 다음과 같은 제약 조건이 있습니다. -
- 허용된 작업은 보완이며 다른 작업은 허용되지 않습니다.
- 루프 및 조건문은 허용되지 않습니다.
- 직접 할당도 허용되지 않습니다.
부울 배열 퍼즐을 푸는 프로그램
#include <iostream> using namespace std; void makeZero(int a[2]) { a[ a[1] ] = a[ !a[1] ]; } int main() { int a[] = {1, 0}; makeZero(a); cout<<"arr[0] = "<<a[0]<<endl; cout<<"arr[1] = "<<a[1]; return 0; }
출력
arr[0] = 0 arr[1] = 0 You can use other ways too. Like this one which does not require the negation operation. a[ a[1] ] = a[ a[0] ]