/***********************************************************************
* kadai116
* ラベリングをするプログラム作成
* (ノーヒント!!)
* (問題は、ソース上に定義してもよいです)
*
* 作成日: 2008年12月13日
* 更新日: 2008年12月23日 pm 11:30
* 備考 :
************************************************************************/
main( )
{
char a[13][18+1] = { {"000000000000000000"}, /* 0 */
{"000010101010100000"}, /* 1 */
{"000010101010100000"}, /* 2 */
{"000010101010100000"}, /* 3 */
{"000111111111110000"}, /* 4 */
{"011111111111111110"}, /* 5 */
{"000111111111110000"}, /* 6 */
{"000010101010100000"}, /* 7 */
{"000010101010100000"}, /* 8 */
{"000010101010100000"}, /* 9 */
{"011000000000001010"}, /* 10 */
{"011000000000111110"}, /* 11 */
{"000000000000000000"} }; /* 12 */
int i; /* 縦 */
int m; /* 横 */
char s; /* ラベル */
int b; /* マーク縦 */
int c; /* マーク横 */
int e; /* */
int f; /* */
char g[13][18+1] = { {"000000000000000000"}, /* 0 */
{"000000000000000000"}, /* 1 */
{"000000000000000000"}, /* 2 */
{"000000000000000000"}, /* 3 */
{"000000000000000000"}, /* 4 */
{"000000000000000000"}, /* 5 */
{"000000000000000000"}, /* 6 */
{"000000000000000000"}, /* 7 */
{"000000000000000000"}, /* 8 */
{"000000000000000000"}, /* 9 */
{"000000000000000000"}, /* 10 */
{"000000000000000000"}, /* 11 */
{"000000000000000000"} }; /* 12 */
for(i=0;i<13;i++){
for(m=0;m<18;m++){
if(a[i][m]=='0'){
printf(" ");
}else{
printf("%c",a[i][m]);
}
}
printf("\n");
}
s = '1';
for(i=0;i<13;i++){
for(m=0;m<18;m++){
if(a[i][m]!='0'){
b = i;
c = m;
if(a[b][c]!='0'){
g[b][c] = s++;
while(g[--b][c]!='0'){
s = g[b][c];
g[b+1][c] = g[b][c];
e = b;
f = c;
while(a[e][--f]!='0'){
g[e][f+1] = g[e][f];
}
}
b = i;
c = m;
while(g[b][--c]!='0'){
s = g[b][c];
g[b][c+1] = g[b][c];
e = b;
f = c;
while(a[--e][f]!='0'){
g[e+1][f] = g[e][f];
}
}
}
}else{
g[i][m] = '0';
}
}
}
for(i=0;i<13;i++){
for(m=0;m<18;m++){
if(g[i][m]=='0'){
printf(" ");
}else{
printf("%c",g[i][m]);
}
}
printf("\n");
}
}
うーん・・・(++)
|

- >
- Yahoo!サービス
- >
- Yahoo!ブログ
- >
- 練習用





だめですか・・・。どうも「 S 」のタイミングがつかめませんっ。おもったのですが、Sとしてしまうのがいけないような。。。島を見つけたらカウントしていくような体制に持っていこうと思います!今晩もう一度組みます。明日は土曜日。もってこいです☆
2009/1/23(金) 午前 7:20