📄 pu.cpp
字号:
#include "string.h"
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#define T 15
/*
int qipan[15][15] = {
{1,1,2,1,2,1,1,2,2,1,2,1,1,2,1},
{2,2,1,2,1,2,2,1,1,2,1,2,2,1,2},
{1,1,2,2,2,1,1,2,2,1,2,1,1,2,1},
{2,2,1,1,1,2,2,1,1,2,1,2,2,1,2},
{1,1,2,1,2,1,1,2,2,1,2,1,1,2,1},
{2,2,2,1,2,2,2,1,1,2,1,2,2,1,2},
{1,1,1,1,2,1,1,2,2,1,2,1,1,2,1},
{2,2,2,2,1,2,2,1,1,2,1,2,2,1,1},
{1,1,1,1,2,1,1,2,2,1,2,1,1,2,2},
{2,2,2,1,1,2,2,1,1,2,1,2,2,1,1},
{1,1,2,1,1,1,1,2,2,2,2,1,1,2,1},
{2,2,2,1,1,2,2,1,1,2,1,2,2,1,0},
{1,1,2,2,2,1,1,2,2,1,2,1,1,2,1},
{2,2,1,2,1,2,2,1,1,2,1,2,2,1,1},
{1,1,2,1,2,1,1,2,1,1,2,1,1,2,1},
};
*/
int qipan[15][15];
int hang(int i,int j)
{
int a[4]={0,0,0,0};
int k =0;
for (int m = 1;m < 5;m++)
{
if ((j+5) > T) return 0;
if (qipan[i][j]==1)
{
if (qipan[i][j+m]==2)
{
return 0;
}
}
else if (qipan[i][j]==2)
{
if (qipan[i][j+m]==1)
{
return 0;
}
}
else
{
if (qipan[i][j+m]!=0)
{
a[k] = qipan[i][j+m];
if (k > 0)
{
if (a[k] != a[k-1]) return 0;
}
k++;
}
}
}
return 1;
}
int lie(int i,int j)
{
int a[4];
int k =0;
for (int m = 1;m < 5;m++)
{
if ((i+5) > T) return 0;
if (qipan[i][j]==1)
{
if (qipan[i+m][j]==2)
{
return 0;
}
}
else if (qipan[i][j]==2)
{
if (qipan[i+m][j]==1)
{
return 0;
}
}
else
{
if (qipan[i+m][j]!=0)
{
a[k] = qipan[i+m][j];
if (k > 0)
{
if (a[k] != a[k-1]) return 0;
}
k++;
}
}
}
return 1;
}
int you(int i,int j)
{
int a[4];
int k =0;
for (int m = 1;m < 5;m++)
{
if ((j+5) > T||(i+5) > T) return 0;
if (qipan[i][j]==1)
{
if (qipan[i+m][j+m]==2)
{
return 0;
}
}
else if (qipan[i][j]==2)
{
if (qipan[i+m][j+m]==1)
{
return 0;
}
}
else
{
if (qipan[i+m][j+m]!=0)
{
a[k] = qipan[i+m][j+m];
if (k > 0)
{
if (a[k] != a[k-1]) return 0;
}
k++;
}
}
}
return 1;
}
int zuo(int i,int j)
{
int a[4];
int k =0;
for (int m = 1;m < 5;m++)
{
if ((i+5) > T||(j-5) < 0) return 0;
if (qipan[i][j]==1)
{
if (qipan[i+m][j-m]==2)
{
return 0;
}
}
else if (qipan[i][j]==2)
{
if (qipan[i+m][j-m]==1)
{
return 0;
}
}
else
{
if(qipan[i+m][j-m]!=0)
{
a[k] = qipan[i+m][j-m];
if (k > 0)
{
if (a[k] != a[k-1]) return 0;
}
k++;
}
}
}
return 1;
}
int main(void)
{
int k=0;
srand( (unsigned)time( NULL ) );
for (int p = 0;p <T;p++)
{
for (int q = 0;q <T;q++)
{
qipan[p][q]=rand()%3;
printf( " %d", qipan[p][q] );
}
printf( " \n" );
}
for (int i = 0;i <T;i++)
{
for (int j = 0;j <T;j++)
{
//printf("lie%d,%d,",i,j);
//if(hang(i,j)) printf("hang,");
//if(lie(i,j)) printf("lie,");
// if(zuo(i,j)) printf("zuo%d,%d,",i,j);
// if(you(i,j)) printf("you%d,%d,",i,j);
if(lie(i,j)||hang(i,j)||zuo(i,j)||you(i,j))
{
printf("%d,%d",i,j);
return 1;
}
}
}
printf("siqile");
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -