บทนำ
ทศนิยมจะถูกยกเลิกหากมีจำนวนทศนิยมเป็นจำนวน จำกัด ตัวอย่างเช่น 0.4 (2/5) กำลังยกเลิกเนื่องจากมีเลขทศนิยมหนึ่งหลัก
ทศนิยมจะเป็นคาบอย่างหมดจดหากมีจำนวนทศนิยมที่ไม่มีที่สิ้นสุดและไม่มีเลขทศนิยมก่อนที่จะเกิดซ้ำ (ส่วนหนึ่งของทศนิยมที่ซ้ำกัน) ตัวอย่างเช่น 0.142857142857142 … (1/7) เป็นระยะหมดจดเพราะมีการทำซ้ำ 142857 ซึ่งจะเริ่มทำซ้ำทันทีหลังจากจุดทศนิยม
ในที่สุดทศนิยมจะมีเป็นระยะถ้ามันมีจำนวนทศนิยมที่ไม่มีที่สิ้นสุดและมีจำนวนทศนิยมที่แน่นอนก่อนที่จะเกิดซ้ำ (ส่วนหนึ่งของทศนิยมที่ซ้ำกัน) ตัวอย่างเช่น 0.16666666666666666 … (1/6) เป็นระยะเพราะในที่สุด ทำซ้ำ 6 เริ่มทำซ้ำหลังจาก 1
งานของคุณ
เขียนโปรแกรมหรือฟังก์ชั่นที่เมื่อได้รับตัวเลขpและq (จำนวนเต็ม, 0 <= p < q <= 100) จะพิจารณาว่าการแสดงทศนิยมของp / qนั้นสิ้นสุดลงเป็นระยะหรือในที่สุดเป็นระยะ
คุณจะต้องส่งออกa
ถ้ามันของการสิ้นสุด (เช่น 0.1) b
ถ้าหากมันเป็นธาตุบริสุทธิ์ (เช่น 0.333 ... ) หรือc
ถ้าหากมันเป็นธาตุในที่สุด (เช่น 0.166 ... ), ที่a
, b
และc
มีความแตกต่างใด ๆ สตริงคงที่ของทางเลือกของคุณ
กรณีทดสอบ
0/1 => Terminating
0/2 => Terminating
1/2 => Terminating
0/3 => Terminating
1/3 => Purely Periodic
2/3 => Purely Periodic
0/4 => Terminating
1/4 => Terminating
2/4 => Terminating
3/4 => Terminating
0/5 => Terminating
1/5 => Terminating
2/5 => Terminating
3/5 => Terminating
4/5 => Terminating
0/6 => Terminating
1/6 => Eventually Periodic
2/6 => Purely Periodic
3/6 => Terminating
4/6 => Purely Periodic
5/6 => Eventually Periodic
0/7 => Terminating
1/7 => Purely Periodic
2/7 => Purely Periodic
3/7 => Purely Periodic
4/7 => Purely Periodic
5/7 => Purely Periodic
6/7 => Purely Periodic
0/8 => Terminating
1/8 => Terminating
2/8 => Terminating
3/8 => Terminating
4/8 => Terminating
5/8 => Terminating
6/8 => Terminating
7/8 => Terminating
0/9 => Terminating
1/9 => Purely Periodic
2/9 => Purely Periodic
3/9 => Purely Periodic
4/9 => Purely Periodic
5/9 => Purely Periodic
6/9 => Purely Periodic
7/9 => Purely Periodic
8/9 => Purely Periodic
0/10 => Terminating
1/10 => Terminating
2/10 => Terminating
3/10 => Terminating
4/10 => Terminating
5/10 => Terminating
6/10 => Terminating
7/10 => Terminating
8/10 => Terminating
9/10 => Terminating
0/11 => Terminating
1/11 => Purely Periodic
2/11 => Purely Periodic
3/11 => Purely Periodic
4/11 => Purely Periodic
5/11 => Purely Periodic
6/11 => Purely Periodic
7/11 => Purely Periodic
8/11 => Purely Periodic
9/11 => Purely Periodic
10/11 => Purely Periodic
0/12 => Terminating
1/12 => Eventually Periodic
2/12 => Eventually Periodic
3/12 => Terminating
4/12 => Purely Periodic
5/12 => Eventually Periodic
6/12 => Terminating
7/12 => Eventually Periodic
8/12 => Purely Periodic
9/12 => Terminating
10/12 => Eventually Periodic
11/12 => Eventually Periodic
0/13 => Terminating
1/13 => Purely Periodic
2/13 => Purely Periodic
3/13 => Purely Periodic
4/13 => Purely Periodic
5/13 => Purely Periodic
6/13 => Purely Periodic
7/13 => Purely Periodic
8/13 => Purely Periodic
9/13 => Purely Periodic
10/13 => Purely Periodic
11/13 => Purely Periodic
12/13 => Purely Periodic
0/14 => Terminating
1/14 => Eventually Periodic
2/14 => Purely Periodic
3/14 => Eventually Periodic
4/14 => Purely Periodic
5/14 => Eventually Periodic
6/14 => Purely Periodic
7/14 => Terminating
8/14 => Purely Periodic
9/14 => Eventually Periodic
10/14 => Purely Periodic
11/14 => Eventually Periodic
12/14 => Purely Periodic
13/14 => Eventually Periodic
0/15 => Terminating
1/15 => Eventually Periodic
2/15 => Eventually Periodic
3/15 => Terminating
4/15 => Eventually Periodic
5/15 => Purely Periodic
6/15 => Terminating
7/15 => Eventually Periodic
8/15 => Eventually Periodic
9/15 => Terminating
10/15 => Purely Periodic
11/15 => Eventually Periodic
12/15 => Terminating
13/15 => Eventually Periodic
14/15 => Eventually Periodic
คุณสามารถค้นหากรณีทดสอบทั้งหมดที่นี่
คุณได้รับอนุญาตให้เลือก 3 ค่าของคุณเองสำหรับผลลัพธ์ แต่ต้องชัดเจนว่าเป็นค่าใด
จำไว้ว่านี่คือcode-golfดังนั้นโค้ดที่มีจำนวนไบต์น้อยที่สุดจะเป็นผู้ชนะ
คำแนะนำ
ยกเลิก:
การแยกตัวประกอบเฉพาะของตัวหารทศนิยมในรูปแบบที่ง่ายที่สุดประกอบด้วยเพียง 2 วินาทีและ 5 วินาที
หมดจดเป็นระยะ:
การแยกตัวประกอบเฉพาะของตัวหารทศนิยมอย่างหมดจดในรูปแบบที่ง่ายที่สุดไม่รวม 2s หรือ 5s ใด ๆ
ในที่สุดระยะ:
การแยกตัวประกอบเฉพาะของตัวหารทศนิยมในที่สุดในรูปแบบที่ง่ายที่สุดนั้นมีอย่างน้อยหนึ่ง 2 หรือ 5 แต่ยังรวมถึงตัวเลขอื่น ๆ
ลีดเดอร์
นี่คือตัวอย่างข้อมูลเพื่อสร้างทั้งกระดานผู้นำปกติและภาพรวมของผู้ชนะตามภาษา
เพื่อให้แน่ใจว่าคำตอบของคุณปรากฏขึ้นโปรดเริ่มคำตอบด้วยหัวข้อโดยใช้เทมเพลต Markdown ต่อไปนี้:
# Language Name, N bytes
ที่N
มีขนาดของส่งของคุณ หากคุณปรับปรุงคะแนนของคุณคุณสามารถเก็บคะแนนเก่าไว้ในพาดหัวโดยการตีพวกเขาผ่าน ตัวอย่างเช่น
# Ruby, <s>104</s> <s>101</s> 96 bytes
หากคุณต้องการรวมหลายตัวเลขไว้ในส่วนหัวของคุณ (เช่นเนื่องจากคะแนนของคุณคือผลรวมของไฟล์สองไฟล์หรือคุณต้องการแสดงรายการบทลงโทษการตั้งค่าสถานะของล่ามแยกต่างหาก) ตรวจสอบให้แน่ใจว่าคะแนนจริงเป็นตัวเลขสุดท้ายในส่วนหัว:
# Perl, 43 + 2 (-p flag) = 45 bytes
นอกจากนี้คุณยังสามารถตั้งชื่อภาษาให้เป็นลิงค์ซึ่งจะปรากฏในตัวอย่างกระดานแต้มนำ:
# [><>](http://esolangs.org/wiki/Fish), 121 bytes