Advertisement
Guest User

Untitled

a guest
May 18th, 2012
43
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.06 KB | None | 0 0
  1. Dana je igralna deska velikosti 3x3, vsako polje je bodisi črne bodisi bele barve. Posamezna poteza je sestavljena iz pritiska na eno polje, povzroči pa spremembo barve pritisnjenega polja in temu polju sosednjih polj (sosedi so levo, desno, gor in dol, ne pa tudi po diagonalah).
  2.  
  3. Primer ob pritisku srednjega polja v desnem stolpcu:
  4. 0X0 0XX
  5. 00X -> 0X0
  6. X0X X00
  7. Napišite program, ki ugotovi, ali lahko iz poljubne začetne deske z nekim zaporedjem pritiskov dosežemo povsem belo desko.
  8. Primer:
  9. 00X XX0 000
  10. XX0 -> X00 -> 000
  11. 000 000 000
  12. Pri tem lahko uporabite macro B9, ki v izvorni datoteki omogočca zapis 9-bitnih števil v dvojiškem zapisu.
  13. Primer:
  14. B9(010010000) pomeni 144
  15.  
  16. #define HEX__(n) 0x##n##ul
  17. #define B9__(x) \
  18. ((x&0x00000000Flu)? 1:0)+ \
  19. ((x&0x0000000F0lu)? 2:0)+ \
  20. ((x&0x000000F00lu)? 4:0)+ \
  21. ((x&0x00000F000lu)? 8:0)+ \
  22. ((x&0x0000F0000lu)? 16:0)+ \
  23. ((x&0x000F00000lu)? 32:0)+ \
  24. ((x&0x00F000000lu)? 64:0)+ \
  25. ((x&0x0F0000000lu)?128:0)+ \
  26. ((x&0xF00000000lu)?256:0)
  27. #define B9(d) \
  28. ((long unsigned int)(B9__(HEX__(d))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement