This puzzle consists completely of binary numbers, so all the characters needed to fill in the squares will be 0s or 1s. The crossnumber is a 5x5 square grid, with 5 digits, e.g., 1 will be 00001, 2 will be 00010, and 4, 00100.
The NOT operation changes all the 0s to 1s and all 1s to 0s; e.g., NOT(00110) is 11001 and NOT(10100) is 01011.
+----+----+----+----+----+
| 1 | 2 | 3 | 4 | 5 |
+----+----+----+----+----+
| 2 | | | | |
+----+----+----+----+----+
| 3 | | | | |
+----+----+----+----+----+
| 4 | | | | |
+----+----+----+----+----+
| 5 | | | | |
+----+----+----+----+----+
A C R O S S
1. D2 x 2 + 1
2. An oblong number.
3. D3 - A1
4. A3 + D5
5. D1 - A3
D O W N
1. NOT A2
2. NOT A1
3. A2 x 2
4. A5 - A2
5. A3 + D1
grid=repmat('x',5);
for n=[0 2 6 12] % will be doubled for d3 so no larger than 15
a2=format5(n);
grid(2,:)=a2;
d1=a2=='0';
d1=char(double(d1)+48);
if d1(2)==a2(1)
grid(:,1)=d1;
d3=[a2(2:5),'0'];
if d3(2)==a2(3)
grid(:,3)=d3;
for d2n=0:15
d2=format5(d2n);
if d2(2)==a2(2)
a1=[d2(2:5),'1'];
if isequal(a1(1:3),[d1(1),d2(1),d3(1)])
grid(1,:)=a1;
grid(:,2)=d2;
a3=format5(bin2dec(d3)-bin2dec(a1));
a5=format5(bin2dec(d1)-bin2dec(a3));
if isequal(a3(1:3),[d1(3),d2(3),d3(3)]) ...
&& isequal(a5(1:3),[d1(5),d2(5),d3(5)])
grid(3,:)=a3;
grid(5,:)=a5
end
end
end
end
end
end
end
function f5=format5(x)
f5=num2str(str2num(dec2bin(x)),'%05d');
end
leaves off at the incompletely solved
'10101'
'01100'
'00011'
'110xx'
'10000'
Now A4 = A3 + D5 = 2 * A3 + D1
binary: 110 + 10011 = 11001
10101
01100
00011
11001
10000
Is D4 = A5 - A2 = 10000 - 01100?
... or in decimal 4 = 16 - 12?
Yes.
|
Posted by Charlie
on 2022-08-30 10:18:57 |