結果

問題 No.455 冬の大三角
ユーザー mono1977mono1977
提出日時 2016-12-08 02:16:28
言語 C90
(gcc 12.3.0)
結果
AC  
実行時間 1 ms / 2,000 ms
コード長 1,218 bytes
コンパイル時間 595 ms
コンパイル使用メモリ 20,992 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-06-29 21:24:18
合計ジャッジ時間 1,988 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 54
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.c: In function ‘main’:
main.c:5:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    5 |         scanf("%d%d\n",&h,&w);
      |         ^~~~~~~~~~~~~~~~~~~~~

ソースコード

diff #

#include<stdio.h>

int main(){
	int h,w;
	scanf("%d%d\n",&h,&w);
	char s[h][w];
	int i,j;
	int star_count=0,star_x[2],star_y[2];
	
	for(i=0;i<h;i++){
		for(j=0;j<=w;j++){
			if(j==w){
				getchar();//改行を飛ばす
			}else{
				s[i][j]=getchar();
				//printf("%d,%d,%c\n",i,j,s[i][j]);
				if(s[i][j]=='*'){
					star_x[star_count] = j;
					star_y[star_count] = i;
					star_count++;
				}
			}
		}
	}
	
/*	for(i=0;i<h;i++){
		for(j=0;j<w;j++){
			printf("%c",s[i][j]);
		}
		puts("");
	}*/
	
//	printf("1st star position: %d %d\n",star_x[0],star_y[0]);
//	printf("2nd star position: %d %d\n",star_x[1],star_y[1]);
	if(star_x[0]==star_x[1]){//星が縦に並んでいる場合
		if(star_x[0]==0){//星が二個とも左端
			s[star_y[0]][star_x[0]+1] = '*';//一個目の星の右を星にする
		}else{
			s[star_y[0]][star_x[0]-1] = '*';
		}
	}else{//縦に並んでいない場合は一個目の星の上下どちらかに星をつくる
		if(star_y[0]==0){//一個目の星が上端
			s[star_y[0]+1][star_x[0]] = '*';//一個目の下に星をつくる
		}else{
			s[star_y[0]-1][star_x[0]] = '*';
		}
	}
	
	for(i=0;i<h;i++){
		for(j=0;j<w;j++){
			printf("%c",s[i][j]);
		}
		puts("");
	}
	
	return 0;
}
0