Oh tidak, saya tersesat dalam perjalanan untuk menemukan harta karun besar Marakov! Dan yang saya miliki hanyalah instruksi tidak berguna ini yang terlihat seperti S10R10D30... Saya tidak tahu apa artinya! Bisakah kamu membantuku?
Tantangan
Diberikan arahan yang terdiri dari N E S W U D L R 1 2 3 4 5 6 7 8 9 0, output seberapa jauh saya akan berasal dari tempat saya mulai ketika saya mengikuti arahan itu (yaitu Euclidean Distance).
N E S W lihat saya berbelok ke Utara, Timur, Selatan, dan Barat;
U D L Rlihat saya memutar Atas, Bawah, Kiri, dan Kanan (Jadi NRsama dengan E, dan begitu juga SL; SLLsama dengan N). Naik berarti terus maju; Turun berarti berbalik.
Setelah setiap arah huruf akan menjadi angka, yang sejauh mana saya akan pergi ke arah itu. N10E20berarti pergi ke Utara 10 unit, lalu berbelok ke Timur, dan pergi ke Timur 20 unit.
Detail Input
- Input akan selalu dimulai dengan salah satu
NESW(jadi input kosong tidak perlu dipertanggungjawabkan). - Dua instruksi surat berturut-turut diizinkan.
NEharus ditafsirkan, "Belok Utara, lalu segera belok Timur". Itu sama dengan adilE.SLLadalah "Belok Selatan, lalu segera belok Kiri dua kali". Itu sama denganN. - Semua angka akan berupa bilangan bulat (perhatikan bagaimana
.tidak ada dalam rangkaian karakter) - Input hanya akan terdiri dari
NESWUDLR1234567890(Jika perlu sesuatu yang lain, seperti '\ 0' dalam C; atau jika fungsi input bahasa Anda memiliki baris tambahan, atau sesuatu, itu bagus.)
Keluaran
- Norma.
- Jika menggunakan fungsi, harus menampilkan data numerik atau string.
- Harus akurat hingga 3 tempat desimal.
Uji Kasus
N10:10N10E10:14.1421N10S10:0NSEWUDLR10:10N100RR20E300D40L12:268.7452ERR10LL20UN30D100:70.71067
Program Python yang tidak imajinatif yang saya gunakan untuk membuat ini.
Kemenangan
Ini codegolf, byte terendah setelah seminggu menang!
NESWUDLR1234567890?