Advertisement
Guest User

Untitled

a guest
Aug 20th, 2014
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.97 KB | None | 0 0
  1. Equation
  2.  
  3. Batas Waktu 1 detik
  4. Batas Memori 32 MB
  5. Deskripsi
  6.  
  7. Abra diberi soal matematika menantang!
  8.  
  9. Diberikan N bilangan bulat positif (tidak melebihi 500), N-1 operator, dan sebuah bilangan bulat X, Abra harus menyusun sebuah persamaan dengan bilangan-bilangan dan operator-operator tersebut sehingga hasil dari persamaannya adalah X (dijamin X muat dalam 64-bit integer).
  10.  
  11. Peraturan:
  12.  
  13. Abra tidak boleh menggabungkan dua bilangan bulat positif untuk membentuk sebuah bilangan bulat yang lebih besar.
  14. Operator harus diapit langsung oleh dua bilangan bulat. (mis: 70 + 100 * 3 / 4).
  15. Presedensi operator mengikuti aturan dalam matematika. Bila ada kesetaraan, dihitung dari kiri ke kanan.
  16. Pembagian a / b hanya dilakukan jika b habis membagi a. (Abra belum mengenal bilangan desimal)
  17. Abra harus mengunakan semua bilangan bulat positif dan operator dalam persamaannya!
  18.  
  19. Format Masukan
  20.  
  21. Pada awalnya, program Anda akan menerima header kasus uji.
  22. Header kasus uji berisi sebuah string yang dijelaskan sebagai berikut:
  23.  
  24. Panjang string tersebut adalah banyaknya subsoal.
  25. Untuk setiap nilai i antara 1 hingga banyaknya subsoal:
  26. jika kasus uji tersebut memenuhi batasan subsoal ke-i, maka karakter ke-i berisi i, atau
  27. jika kasus uji tersebut tidak memenuhi batasan subsoal ke-i, maka karakter ke-i berisi karakter '.'
  28. Sebagai contoh apabila header sebuah kasus uji sebuah soal adalah 1...567, maka:
  29.  
  30. Soal tersebut memiliki 7 buah subsoal (sesuai dengan panjang string tersebut), dan
  31. Kasus uji tersebut memenuhi batasan subsoal ke-1, ke-5, ke-6, dan ke-7.
  32. Masukan terdiri dari beberapa soal. Setiap soal terdiri dari tiga baris. Baris pertama berisi bilangan bulat N dan X. Baris kedua berisi N bilangan bulat positif yang dipisahkan dengan spasi. Baris ketiga berisi N-1 operator dipisahkan dengan spasi.
  33.  
  34. Format Keluaran
  35.  
  36. Satu baris untuk setiap soal. Format keluaran harus seperti "Soal #i: IYA/TIDAK", dengan i menandakan soal ke-i. Keluarkan "IYA" jika Abra bisa membentuk persamaan yang nilainya X. Jika tidak ada persamaan yang memenuhi, keluarkan "TIDAK".
  37.  
  38. Contoh Masukan
  39.  
  40. ..34
  41. 3 7
  42. 1 2 3
  43. + *
  44. 4 145
  45. 3 4 70 100
  46. + * /
  47. 2 1000
  48. 2 2
  49. *
  50. 4 2
  51. 1 1 2 4
  52. / / *
  53. Contoh Keluaran
  54.  
  55. Soal #1: IYA
  56. Soal #2: IYA
  57. Soal #3: TIDAK
  58. Soal #4: IYA
  59. Penjelasan
  60.  
  61. Untuk soal #1, Abra dapat membentuk 1 + 2 * 3 yang hasilnya adalah 7. Untuk soal #2, Abra dapat membentuk 70 + 100 * 3 / 4 yang hasilnya adalah 145. Pada soal #3, mustahil untuk dua kali dua sama dengan seribu.
  62.  
  63. Perhatian! Untuk soal #4, Abra dapat membentuk 4 * 1 / 2 / 1 yang hasilnya adalah 2.
  64.  
  65. Subsoal
  66.  
  67. Terdapat empat subsoal untuk soal ini. Untuk semua subsoal berlaku:
  68.  
  69. Bilangan-bilangan yang diberikan tidak melebihi 500
  70. Operator-operator yang diberikan adalah salah satu dari antara '+', '-', '*', dan '/'
  71. 2 ≤ N ≤ 7
  72. Subsoal 1 (6 poin)
  73.  
  74. Kasus uji dapat diunduh di sini.
  75. Subsoal 2 (6 poin)
  76.  
  77. Kasus uji dapat diunduh di sini.
  78. Subsoal 3 (24 poin)
  79.  
  80. Banyak soal tidak melebihi 5.
  81. Subsoal 4 (64 poin)
  82.  
  83. Banyak soal tidak melebihi 25.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement