6198号:屋根ガーデンを飾る
質問する
6198号:屋根ガーデンを飾る
に近づく
これらの条件を考慮すると,
Stack
によるアクセスが容易になる.マイコード
import java.io.*;
import java.util.Stack;
public class Main {
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
static Stack<Integer> stack = new Stack<>();
static int temp;
static long count;
public static void main(String[] args) throws IOException {
int N = Integer.parseInt(br.readLine());
for (int i = 0; i < N; i++) {
temp = Integer.parseInt(br.readLine());
while (!stack.isEmpty() && stack.peek() <= temp) stack.pop();
count += stack.size();
stack.push(temp);
}
System.out.println(count);
}
}
push
にする前に、毎回前に挿入したビルの高さと比較します.// 「Baking dog」ありがとう。ほほほ
Reference
この問題について(6198号:屋根ガーデンを飾る), 我々は、より多くの情報をここで見つけました https://velog.io/@songs4805/BOJ6198번-옥상-정원-꾸미기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol