結果
| 問題 |
No.348 カゴメカゴメ
|
| コンテスト | |
| ユーザー |
MoritaYasuaki
|
| 提出日時 | 2016-03-05 04:43:25 |
| 言語 | C90 (gcc 12.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,160 bytes |
| コンパイル時間 | 165 ms |
| コンパイル使用メモリ | 21,888 KB |
| 実行使用メモリ | 6,948 KB |
| 最終ジャッジ日時 | 2024-09-24 14:13:32 |
| 合計ジャッジ時間 | 1,837 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 19 WA * 34 |
コンパイルメッセージ
main.c:9:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
9 | main(){
| ^~~~
main.c: In function ‘main’:
main.c:10:5: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
10 | scanf("%d%d",&N,&M);
| ^~~~~~~~~~~~~~~~~~~
ソースコード
#include <stdio.h>
#include <stdlib.h>
int N,M;
long S[2] = {0};
char e[1003] = {0};
#define X(x) ((x)&0x1)
#define COLOR(x) ((x)&0x10)
main(){
scanf("%d%d",&N,&M);
int n,m;
for (n = 0; n < N; n++) {
char ul = 0;
char l = 0;
getchar();
for (m = 0; m < M; m++) {
char c = getchar() != '.';
char u = e[m+1];
char ur = e[m+2];
if (!X(c))
if (!X(u))
c = u;
else if (!X(l))
c = l;
else if (!X(ul))
c = ul ^ 0x10;
else
c = COLOR(l);
else
if (!X(u) && !X(l) && !X(ul) && !X(ur))
c = COLOR(l) | c;
else if (X(u))
c = u;
else if (X(l))
c = l;
else if (X(ul))
c = ul;
else
c = ur;
S[!!COLOR(c)] += X(c);
e[m+1] = c;
l = c;
ul = u;
}
}
printf("%ld\n", S[0]>=S[1]?S[0]:S[1]);
}
MoritaYasuaki