結果
| 問題 | No.5020 Averaging | 
| コンテスト | |
| ユーザー |  clam010 | 
| 提出日時 | 2024-02-25 15:43:18 | 
| 言語 | Kotlin (2.1.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 346 ms / 1,000 ms | 
| コード長 | 967 bytes | 
| コンパイル時間 | 14,658 ms | 
| コンパイル使用メモリ | 442,172 KB | 
| 実行使用メモリ | 54,632 KB | 
| スコア | 15,723,750 | 
| 最終ジャッジ日時 | 2024-02-25 15:43:57 | 
| 合計ジャッジ時間 | 32,903 ms | 
| ジャッジサーバーID (参考情報) | judge15 / judge10 | 
| 純コード判定しない問題か言語 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 50 | 
ソースコード
import java.util.*
import kotlin.math.*
fun main(){
  val N = readLine()!!.toInt()
  val cardList = mutableListOf<Pair<Long,Long>>()
  repeat(N){
    val (a,b) = readLine()!!.split(" ").map{it.toLong()}
    cardList.add(Pair(a,b))
  }
  val c = 500000000000000000L
  val rlist = mutableListOf<Pair<Int,Double>>()
  for(i in 0..N-1){
    val fValue = abs(cardList[i].first-c).toDouble()+0.01
    val bValue = abs(cardList[i].second-c).toDouble()+0.01
    rlist.add(Pair(i,fValue*bValue))
  }
  rlist.sortBy{it.second}
  val stack = ArrayDeque<Int>()
  var count = 0
  for(i in 0..N-1){
    if(count>=50)break
    if(rlist[i].first==0)break
    stack.add(rlist[i].first)
    count++
  }
  val ansList = mutableListOf<Pair<Int,Int>>()
  for(i in 0..stack.size-1){
    val p = stack.removeLast()
    ansList.add(Pair(0,p))
  }
  println(ansList.size)
  for(i in 0..ansList.size-1){
    val u = ansList[i].first+1
    val v = ansList[i].second+1
    println("$u $v")
  }
}
            
            
            
        