เจ้านายของคุณต้องการให้คุณเขียนโค้ดแบบนี้:
public static boolean isPowerOfTen(long input) {
return
input == 1L
|| input == 10L
|| input == 100L
|| input == 1000L
|| input == 10000L
|| input == 100000L
|| input == 1000000L
|| input == 10000000L
|| input == 100000000L
|| input == 1000000000L
|| input == 10000000000L
|| input == 100000000000L
|| input == 1000000000000L
|| input == 10000000000000L
|| input == 100000000000000L
|| input == 1000000000000000L
|| input == 10000000000000000L
|| input == 100000000000000000L
|| input == 1000000000000000000L;
}
(Martin Smith ที่/codereview//a/117294/61929 )
ซึ่งมีประสิทธิภาพและอื่น ๆ แต่ไม่สนุกกับการพิมพ์ เนื่องจากคุณต้องการลดจำนวนการกดคีย์ที่คุณต้องทำคุณจึงเขียนโปรแกรมหรือฟังก์ชั่นที่สั้นลง (หรือเมธอด) ที่ให้เอาต์พุตฟังก์ชั่นนี้สำหรับคุณ (หรือส่งคืนสตริงไปยังเอาต์พุต) และเนื่องจากคุณมีแป้นพิมพ์ยูนิโคดแบบเต็มรูปแบบที่กำหนดเองของคุณเองพร้อมกับคีย์ทั้งหมด 120,737 คีย์ที่จำเป็นสำหรับยูนิโค้ด 8.0 ทั้งหมดเราจึงนับอักขระยูนิโค้ดแทนการกดปุ่ม หรือไบต์หากภาษาของคุณไม่ได้ใช้ซอร์สโค้ดแบบ Unicode
การป้อนข้อมูลโปรแกรมหรือฟังก์ชั่นใด ๆ ของคุณจะนับรวมคะแนนของคุณเนื่องจากคุณต้องพิมพ์ลงในนั้นด้วย
คำชี้แจงและการแก้ไข:
- ลบช่องว่างต่อท้าย 3 หลังหลังสุด
}
- ลบช่องว่างท้ายเดียวออก
return
- การส่งคืนสตริงของเอาต์พุตจากฟังก์ชัน / เมธอดก็โอเค
while(input%10==0) input/=10; return input == 1;
0==Math.log10(input)%1