結果
問題 |
No.5021 Addition Pyramid
|
ユーザー |
|
提出日時 | 2025-02-25 22:02:04 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 1,809 ms / 2,000 ms |
コード長 | 2,637 bytes |
コンパイル時間 | 655 ms |
コンパイル使用メモリ | 7,808 KB |
実行使用メモリ | 15,616 KB |
スコア | 16,206,231 |
最終ジャッジ日時 | 2025-02-25 22:04:08 |
合計ジャッジ時間 | 94,687 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge6 |
純コード判定しない問題か言語 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 50 |
コンパイルメッセージ
Syntax OK
ソースコード
#https://yukicoder.me/contests/532 #MOD_N=998244353 srand(1234) MOD_N=10**8 #V=5-1 #n,m,h = gets.chomp.split().map{_1.to_i} n =gets.chomp.to_i #n =gets.chomp.to_i #raise "unexpected size n #{n}" unless n==600 #def d(v1,v2) = [(v1-v2).abs,MOD_N-(v1-v2).abs].min def d(v1,v2) = MOD_N/2-((v1-v2).abs-MOD_N/2).abs a=[] n.times{ a << gets.chomp.split(' ').map{_1.to_i} raise "unexpected size" unless a.last.size == a.size } def ppp(s) # pp s; STDOUT.flush end class Cl attr_accessor :a attr_accessor :b def initialize(a) @a=a end end def next_(arr) (0...arr.size-1).each{ arr[_1]+=arr[_1+1] arr[_1]%=MOD_N } arr.pop end def calc_total_d(arr,a) max_=0 (0...a.size).each{|row| a_=a[a.size-row-1] raise "unexpected arr.size=#{arr.size}, a.size=#{a_.size}" unless arr.size==a_.size (0...a_.size).each{ dd=d(a_[_1],arr[_1]) max_ = dd if max_<dd } next_(arr) } return max_ end def solve(a) #arr=a.last.clone arrset=[] 3000.times{ arr=[] a.size.times{arr << rand(MOD_N)} arrset << [calc_total_d(arr.clone,a),arr.clone] } arrset.sort! # calc_total_d(arr.clone,a) #pp arrset arr= arrset.first[1] $stderr.puts "# #{5*(10**7) - calc_total_d(arr.clone,a)}" return arr.join(' ') end puts solve(a) STDOUT.flush #for file in in/test_00*.txt; do ; python3 tester_local.py $file =(time ruby -W2 ../yukicoder532.rb < $file);done #rm -rf results; mkdir results; cd in; for file in test_00*.txt; do time ruby ../../yukicoder532.rb < $file > stdout."$file" ; python3 ../tester_local.py $file stdout."$file" >> ../stdout; done; cd ..; grep score stdout>results/scores.txt; mv in/stdout.* results; mv stdout results; cp ../yukicoder532.rb results; cp -r results "results-$(date +"%Y%m%d_%H%M")" # for file in in/000*.txt; do ; ruby -W2 ../ahc042.rb < $file > ../out.txt ; cargo run -r --bin vis $file ../out.txt 2>/dev/null; done; # cargo run -r --bin vis sample_input.txt =(ruby -W2 ../ahc040.rb < sample_input.txt) 2> /dev/null # mkdir results # time rm stderr; for file in in/000*.txt; do cargo run -r --bin tester ruby ../ahc040.rb < $file > "$file".stdout 2>> stderr; done; grep Score stderr>results/scores.txt; cat in/*.txt.stdout | grep CNT > results/analysis.txt; cp -r results "results-$(date +"%Y%m%d_%H%M")" # rm -rf results; mkdir results; cd in; for file in 000*.txt; do time cargo run -r --bin tester ruby ../../ahc040.rb < $file > stdout."$file" 2>> ../stderr; done; cd ..; grep Score stderr>results/scores.txt; mv in/stdout.* results; mv stderr results; cp ../ahc040.rb results; cp -r results "results-$(date +"%Y%m%d_%H%M")"