[kotlin]伯俊噴水を探して


![](https://media.vlpt.us/images/huijiny/post/2db5f5b9-9f46-41af-89a1-cb7c2d12f384/%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202021-07-08%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%202.16.36.png)
今日からサークル内でアルゴリズムの勉強を始め、白俊で解決することにしました!
コトリンを基準とした足の価格でうろうろしている
ジャワのことは覚えていません.
どうやって
  • の足の価格を手に入れたのか覚えていないので、長い時間をかけてやっと見つけました.
  • 少し対角線に傾いていると
    1/1 ->
    2/1 -> 1/2
    3/1 -> 2/2 -> 1/3
    これにより,1行当たりの分母,分子,および等しい規則が見出される.
    分母、分子の中で一つだけ知っていれば、手に入れることができます.
  • 分母、分子の中の1つの知っている方法は->蓄積と継続を数より小さい数に加え、それから要求された数から蓄積和を減算することである.では、その列から何人目の友達かがわかります.
  • 偶数行数は右から左、奇数行数は左から右のインデックスは
  • である.
    import java.io.BufferedReader
    import java.io.InputStreamReader
    
    fun main() {
        val br = BufferedReader(InputStreamReader(System.`in`))
        val number = br.readLine().toInt()
        var i = 1
        var sum = 0
        var row = 0
        var col = 0
        while (number > sum + i) {
            sum += i
            i++
        }
        if (i % 2 == 1) {
            row = (number - sum)
            col = (i + 1) - row
        } else {
            col = (number - sum)
            row = (i + 1) - col
        }
        print(col.toString()+'/'+row.toString())
        br.close()
    }