栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

poj 1099 Square Ice

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

poj 1099 Square Ice

#include <stdio.h>#include <string.h>#include <iostream>using namespace std;#define N 100char square[N][N];//初始化框架void init(int n, int m){    int i, j, k;    for(i=0; i<=m; i++)    {        if(i % 4 == 0)        { for(j=0, k=0; k < n; k++) {     square[i][j++] = 'H';     square[i][j++] = ' ';     square[i][j++] = 'O';     square[i][j++] = ' '; } square[i][j++] = 'H';        }        else if(i % 4 == 1 || i % 4 == 3)        { for(j=0; j<4*n+1; j++) {     square[i][j] = ' '; }        }        else        { for(j=0; j<4*n+1; j++) {     if(j % 4 == 2)     {         square[i][j] = 'H';     }     else     {         square[i][j] = ' ';     } }        }    }}int main(){    int i, j, t;     int aasm[N][N], markh[N][N], marko[N][N];    int n, m;    //freopen("in.txt", "r", stdin);    //freopen("out.txt", "w", stdout);    t = 0;    while(scanf("%d", &n) && n)    {        memset(aasm, 0, sizeof(aasm));        memset(marko, 0, sizeof(marko));        memset(markh, 0, sizeof(markh));        init(n, 4*n);        for(i=0; i<n; i++) for(j=0; j<n; j++)     scanf("%d", &aasm[i][j]);//把 1 和-1能确定的确定下来        for(i=0; i<n; i++)        { for(j=0; j<n; j++) {     if(aasm[i][j] == 1)     {         markh[4*i][4*j] = 1;         square[4*i][1+4*j] = '-';         marko[4*i][2+4*j] = 2;         square[4*i][3+4*j] = '-';       markh[4*i][4+4*j] = 1;     }     else if(aasm[i][j] == -1)     {         square[4*i-1][2+4*j] = '|';         square[4*i+1][2+4*j] = '|';         marko[4*i][2+4*j] = 2;         markh[4*i-2][2+4*j] = 1;         markh[4*i+2][2+4*j] = 1;     } }        }//处理其他的        for(i=0; i<4*(n-1)+1; i=i+4)        { for(j=2; j<4*n+1; j=j+4) {     if(square[i][j] == 'O' && marko[i][j] < 2)     { if(markh[i][j-2] == 0)         {  square[i][j-1] = '-';  markh[i][j-2] = 1;  if(i> 0 && markh[i-2][j] == 0)  {      square[i-1][j] = '|';      markh[i-2][j] = 1;  }  else if(i < 4*(n-1) && markh[i+2][j] == 0)  {      square [i+1][j] = '|';      markh[i+2][j] = 1;  }         }         else if(markh[i][j+2] == 0)         {  square[i][j+1] = '-';  markh[i][j+2] = 1;  if(i> 0 && markh[i-2][j] == 0)  {      square[i-1][j] = '|';      markh[i-2][j] = 1;  }  else if(i < 4*(n-1) && markh[i+2][j] == 0)  {      square[i+1][j] = '|';      markh[i+2][j] = 1;  }         }     } }        }        t++;        printf("Case %d:nn", t);        for(j=1; j<=4*n+3; j++) printf("*");        printf("n");        for(i=0; i<4*(n-1)+1; i++)        { printf("*"); for(j=0; j<4*n+1; j++)     printf("%c", square[i][j]); printf("*n");        }        for(j=1; j<=4*n+3; j++) printf("*");        printf("nn");        }    return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/379024.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号