SWEA 2805収穫農作物
11606 ワード
この問題を見ると,BFSをどのように使うか,あるいは二次元配列のインデックスを用いて菱形に含まれるかどうかを決定する方法が考えられる.
BFSを熟知した後は、BFSのみで実施しやすい.
実行時にインデックス作成条件を使用すると、より効率的になります.
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
class Solution {
static BufferedReader br;
static BufferedWriter bw;
static StringTokenizer st;
static char[][] map;
public static void main(String args[]) throws Exception {
br = new BufferedReader(new InputStreamReader(System.in));
bw = new BufferedWriter(new OutputStreamWriter(System.out));
int T = Integer.parseInt(br.readLine());
for (int tc = 1; tc <= T; tc++) {
int N = Integer.parseInt(br.readLine());
int count = 0;
map = new char[N][N];
for (int i = 0; i < N; i++) {
map[i] = br.readLine().toCharArray();
}
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
int dx = Math.abs(i - N / 2);
int dy = Math.abs(j - N / 2);
if (dx + dy > N / 2) {
continue;
} else {
count += map[i][j] - '0';
}
}
}
bw.write(String.format("#%d ", tc));
bw.write(String.format("%d\n", count));
}
bw.flush();
bw.close();
}
}
Reference
この問題について(SWEA 2805収穫農作物), 我々は、より多くの情報をここで見つけました https://velog.io/@mraz0210/SWEA2805-농작물-수확하기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol