結果

問題 No.1623 三角形の制作
ユーザー 小野寺健
提出日時 2021-12-20 10:41:44
言語 Go
(1.23.4)
結果
AC  
実行時間 259 ms / 2,000 ms
コード長 849 bytes
コンパイル時間 14,030 ms
コンパイル使用メモリ 218,744 KB
実行使用メモリ 6,144 KB
最終ジャッジ日時 2024-09-15 15:16:00
合計ジャッジ時間 19,286 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 19
権限があれば一括ダウンロードができます

ソースコード

diff #

package main

import (
	"fmt"
	"bufio"
	"os"
)

func main() {
	r := bufio.NewReader(os.Stdin)
	w := bufio.NewWriter(os.Stdout)
	defer w.Flush()
	MAX := 3001
	cnt_r := make([]int, MAX)
	cnt_g := make([]int, MAX)
	cnt_b := make([]int, MAX)
	var n int
	fmt.Fscan(r, &n)
	for i := 0; i < n; i++ {
		var x int
		fmt.Fscan(r, &x)
		cnt_r[x]++
	}
	for i := 0; i < n; i++ {
		var x int
		fmt.Fscan(r, &x)
		cnt_g[x]++
	}
	for i := 0; i < n; i++ {
		var x int
		fmt.Fscan(r, &x)
		cnt_b[x]++
	}
	for i := 1; i < MAX; i++ {
		cnt_r[i] += cnt_r[i-1]
		cnt_g[i] += cnt_g[i-1]
		cnt_b[i] += cnt_b[i-1]
	}
	cnt := 0
	for a := 1; a < MAX; a++ {
		if cnt_r[a] == cnt_r[a-1] {
			continue
		}
		rn := cnt_r[a] - cnt_r[a-1]
		for j := 1; j <= a; j++ {
			gn := cnt_g[j] - cnt_g[j-1]
			bn := cnt_b[a] - cnt_b[a-j]
			cnt += rn * gn * bn
		}
	}
	fmt.Fprintln(w, cnt)
}
0