首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
将帅专题
编程之美——中国象棋将帅问题
A表示“将”,B表示“帅”。用1~9表示A、B的坐标。 请写出一个程序,输出A、B所有合法位置。要求在代码中只能使用一个字节存储变量。 解法一: 用一个unsigned char类型变量存储A、B的位置,前4bit表示A的位置,后4bit表示B的位置。 #include <stdio.h>#define HALF_BITS_LENGTH 4#define FULLMASK
阅读更多...
编程之美:中国象棋将帅问题
题目大意: 设A表示“将”,B表示“帅”,AB均只能在各自的九宫格内移动,但是他们不能遥相对望,输出所有A、B的合法位置。要求只能使用一个变量。 分析:设九宫格如下: 1 2 3 4 5 6 7 8 9 假设我们已知了A位置i和B位置j,那么我们判断他们合法只需要判断i%3和j%3不等即可,那么我们的工作也就是怎么样只用一个变量将A、B位置都保存起来 1、可以用位的思想,用一个数中不
阅读更多...
将帅之争
public class ChinaChess { /** * 将帅之争~~~~~~~~ * @param args */ public static void main(String[] args) { //Byte byte11[20]; byte i = 81; while( i-- >
阅读更多...