結果

問題 No.455 冬の大三角
ユーザー bal4u
提出日時 2019-04-18 06:41:54
言語 C
(gcc 13.3.0)
結果
AC  
実行時間 1 ms / 2,000 ms
コード長 1,060 bytes
コンパイル時間 129 ms
コンパイル使用メモリ 30,592 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-09-22 08:45:21
合計ジャッジ時間 2,536 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 54
権限があれば一括ダウンロードができます

ソースコード

diff #

// yukicoder: No.455 冬の大三角
// 2019.4.18 bal4u

#include <stdio.h>

#if 0
#define gc() getchar_unlocked()
#define pc(c) putchar_unlocked(c)
#else
#define gc() getchar()
#define pc(c) putchar(c)
#endif
int in()    // 非負整数の入力
{
	int n = 0, c = gc();
	//	while (isspace(c)) c = gc();
	do n = 10 * n + (c & 0xf), c = gc(); while (c >= '0');
	return n;
}

void ins(char *s)  // 文字列の入力 スペース以下の文字で入力終了
{
	do *s = gc();
	while (*s++ > ' ');
	*(s - 1) = 0;
}

void outs(char *s) { while (*s) pc(*s++); }

char map[105][105];

int main()
{
	int H, W, r, c;
	int r1, c1, r2, c2, r3, c3;

	H = in(), W = in();
	r1 = r2 = -1;
	for (r = 0; r < H; r++) {
		ins(map[r]);
		for (c = 0; c < W; c++) {
			if (map[r][c] == '*') {
				if (r1 < 0) r1 = r, c1 = c;
				else r2 = r, c2 = c;
			}
		}
	}
	if (r1 == r2) c3 = (c1+c2)/2, r3 = (r1==0)? H-1: 0;
	else if (c1 == c2) r3 = (r1+r2)/2, c3 = (c1==0)? W-1: 0;
	else r3 = r1, c3 = c2;
	map[r3][c3] = '*';
	for (r = 0; r < H; r++) outs(map[r]), pc('\n');
	return 0;
}
0