Guest User

Selfhack attempt

a guest
Mar 7th, 2020
359
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Kotlin 3.62 KB | None | 0 0
  1. // Selfhack attempt for https://codeforces.com/contest/1323/submission/72639972
  2. @file:Suppress("NOTHING_TO_INLINE", "EXPERIMENTAL_FEATURE_WARNING", "OVERRIDE_BY_INLINE")
  3.  
  4. import java.io.PrintWriter
  5. import java.util.StringTokenizer
  6. import kotlin.math.*
  7. import kotlin.random.Random
  8. import kotlin.collections.sort as _sort
  9. import kotlin.collections.sortDescending as _sortDescending
  10. import kotlin.io.println as iprintln
  11.  
  12. /** @author Spheniscine */
  13. fun main() { _writer.solve(); _writer.flush() }
  14. fun PrintWriter.solve() {
  15.     println("40000 40000 1396755360")
  16.  
  17.     val A = IntArray(40000)
  18.     var i = 0
  19.     var k = 1
  20.  
  21.     while(i < A.size) {
  22.         val end = min(A.size, i + k)
  23.  
  24.         for(j in i until end) {
  25.             A[j] = 1
  26.         }
  27.  
  28.         i = end + 1
  29.         k++
  30.     }
  31.  
  32.     val ln = A.joinToString(" ")
  33.     println(ln)
  34.     println(ln)
  35. }
  36.  
  37. /** IO code start */
  38. //@JvmField val INPUT = File("input.txt").inputStream()
  39. //@JvmField val OUTPUT = File("output.txt").outputStream()
  40. @JvmField val INPUT = System.`in`
  41. @JvmField val OUTPUT = System.out
  42.  
  43. @JvmField val _reader = INPUT.bufferedReader()
  44. fun readLine(): String? = _reader.readLine()
  45. fun readLn() = _reader.readLine()!!
  46. @JvmField var _tokenizer: StringTokenizer = StringTokenizer("")
  47. fun read(): String {
  48.     while (_tokenizer.hasMoreTokens().not()) _tokenizer = StringTokenizer(_reader.readLine() ?: return "", " ")
  49.     return _tokenizer.nextToken()
  50. }
  51. fun readInt() = read().toInt()
  52. fun readDouble() = read().toDouble()
  53. fun readLong() = read().toLong()
  54. fun readStrings(n: Int) = List(n) { read() }
  55. fun readLines(n: Int) = List(n) { readLn() }
  56. fun readInts(n: Int) = List(n) { read().toInt() }
  57. fun readIntArray(n: Int) = IntArray(n) { read().toInt() }
  58. fun readDoubles(n: Int) = List(n) { read().toDouble() }
  59. fun readDoubleArray(n: Int) = DoubleArray(n) { read().toDouble() }
  60. fun readLongs(n: Int) = List(n) { read().toLong() }
  61. fun readLongArray(n: Int) = LongArray(n) { read().toLong() }
  62.  
  63. @JvmField val _writer = PrintWriter(OUTPUT, false)
  64.  
  65. /** shuffles and sort overrides to avoid quicksort attacks */
  66. private inline fun <T> _shuffle(rnd: Random, get: (Int) -> T, set: (Int, T) -> Unit, size: Int) {
  67.     // Fisher-Yates shuffle algorithm
  68.     for (i in size - 1 downTo 1) {
  69.         val j = rnd.nextInt(i + 1)
  70.         val temp = get(i)
  71.         set(i, get(j))
  72.         set(j, temp)
  73.     }
  74. }
  75.  
  76. @JvmField var _random: Random? = null
  77. val random get() = _random ?: Random(0x594E215C123 * System.nanoTime()).also { _random = it }
  78.  
  79. fun IntArray.shuffle(rnd: Random = random) = _shuffle(rnd, ::get, ::set, size)
  80. fun IntArray.sort() { shuffle(); _sort() }
  81. fun IntArray.sortDescending() { shuffle(); _sortDescending() }
  82.  
  83. fun LongArray.shuffle(rnd: Random = random) = _shuffle(rnd, ::get, ::set, size)
  84. fun LongArray.sort() { shuffle(); _sort() }
  85. fun LongArray.sortDescending() { shuffle(); _sortDescending() }
  86.  
  87. fun DoubleArray.shuffle(rnd: Random = random) = _shuffle(rnd, ::get, ::set, size)
  88. fun DoubleArray.sort() { shuffle(); _sort() }
  89. fun DoubleArray.sortDescending() { shuffle(); _sortDescending() }
  90.  
  91. fun CharArray.shuffle(rnd: Random = random) = _shuffle(rnd, ::get, ::set, size)
  92. inline fun CharArray.sort() { _sort() }
  93. inline fun CharArray.sortDescending() { _sortDescending() }
  94.  
  95. inline fun <T: Comparable<T>> Array<out T>.sort() = _sort()
  96. inline fun <T: Comparable<T>> Array<out T>.sortDescending() = _sortDescending()
  97. inline fun <T: Comparable<T>> MutableList<out T>.sort() = _sort()
  98. inline fun <T: Comparable<T>> MutableList<out T>.sortDescending() = _sortDescending()
  99.  
  100. fun `please stop removing these imports IntelliJ`() {
  101.     iprintln(max(1, 2))
  102. }
Add Comment
Please, Sign In to add comment