Tulis program atau fungsi yang hanya menggunakan karakter yang berisi string ^dan v(Anda dapat mengasumsikan tidak akan ada karakter lain). Baca dari kiri ke kanan string ini mewakili urutan klik mouse yang dilakukan pengguna tunggal saat melihat pertanyaan atau jawaban Stack Exchange untuk pertama kalinya.
Setiap ^mewakili klik tombol upvote dan setiap vmewakili klik tombol downvote . (Untuk contoh yang berfungsi terlihat sedikit ke kiri.)
Asumsikan bahwa tidak ada batasan suara yang berlaku sehingga semua klik terdaftar dengan benar.
Cetak atau kembali:
1atau+1jika postingan akhirnya diunggulkan.0jika pos akhirnya tidak terpilih. (-0dan+0tidak valid)-1jika postingan akhirnya downvoted.
Posting dimulai dengan nol suara bersih dari pengguna dan tombol mengubah suara bersih sebagai berikut:
Net Votes Before Button Pressed Net Votes After
1 ^ 0
1 v -1
0 ^ 1
0 v -1
-1 ^ 1
-1 v 0
Kode terpendek dalam byte menang.
Kasus uji:
[empty string] -> 0
^^ -> 0
^v -> -1
^ -> 1
v -> -1
v^ -> 1
vv -> 0
^^^ -> 1
vvv -> -1
^^^^ -> 0
vvvv -> 0
^^^^^ -> 1
vvvvv -> -1
^^^^^^ -> 0
vvvvvv -> 0
^^v -> -1
^v^ -> 1
^vv -> 0
vv^ -> 1
v^v -> -1
v^^ -> 0
^vvv^^vv^vv^v^ -> 1
^vvv^^vv^vv^v^^ -> 0
^vvv^^vv^vv^v^^^ -> 1
^vvv^^vv^vv^v^^v -> -1
^vvv^^vv^vv^v^^vv -> 0
^vvv^^vv^vv^v^^vvv -> -1
^vvvvvvvvvvvv -> 0
^^vvvvvvvvvvvv -> 0
^^^vvvvvvvvvvvv -> 0
vvv^^^^^^^^^^^^ -> 0
vv^^^^^^^^^^^^ -> 0
v^^^^^^^^^^^^ -> 0
^karakter dapat menyebabkan perubahan skor -1, +1 atau +2? Apakah saya padat di mana? Apa yang sedang terjadi?