โจทย์
ดูต้นฉบับ (ภาษาอังกฤษ)สำหรับแต่ละจำนวนเต็มตั้งแต่ 1 ถึง limit ให้ใช้ Fizz สำหรับจำนวนที่หารด้วย 3 ลงตัว, Buzz สำหรับจำนวนที่หารด้วย 5 ลงตัว และ FizzBuzz สำหรับจำนวนที่หารด้วยทั้ง 3 และ 5 ลงตัว หากไม่เข้าเงื่อนไขใด ๆ ให้ใช้ตัวเลขนั้นในรูปแบบข้อความ คืนค่ารายการตามลำดับ แทนที่จะพิมพ์ออกมา
ให้เขียนฟังก์ชัน fizz_buzz(limit)
อินพุต
limit: จำนวนเต็มสุดท้ายที่ต้องรวมอยู่ด้วย
เอาต์พุต
คืนค่าลิสต์ของสตริง โดยแต่ละสตริงแทนจำนวนเต็มตั้งแต่ 1 ถึง limit ตามลำดับ
เงื่อนไข
0 ≤ limit ≤ 10,000 กรณี limit เป็น 0 ให้คืนลิสต์ว่าง
ตัวอย่าง
อินพุต:
limit = 5
ผลลัพธ์ที่คาดหวัง:
expected = ["1", "2", "Fizz", "4", "Buzz"]
อินพุต:
long long limit = 5;
ผลลัพธ์ที่คาดหวัง:
std::vector<std::string> expected = {"1", "2", "Fizz", "4", "Buzz"};
อินพุต:
long limit = 5;
ผลลัพธ์ที่คาดหวัง:
string[] expected = new string[] {"1", "2", "Fizz", "4", "Buzz"};
คำอธิบาย
3 หารด้วย 3 ลงตัว และ 5 หารด้วย 5 ลงตัว รายการอื่น ๆ ให้คงตัวเลขเดิมไว้
อินพุต:
limit = 0
ผลลัพธ์ที่คาดหวัง:
expected = []
อินพุต:
long long limit = 0;
ผลลัพธ์ที่คาดหวัง:
std::vector<std::string> expected = {};
อินพุต:
long limit = 0;
ผลลัพธ์ที่คาดหวัง:
string[] expected = new string[] {};
คำอธิบาย
ไม่มีจำนวนเต็มใด ๆ ตั้งแต่ 1 ถึง 0 ดังนั้นลิสต์จึงว่างเปล่า
แหล่งอ้างอิง
โจทย์นี้ปรับให้เหมาะกับ CodeUtility กรุณาทำตามคำชี้แจงและข้อจำกัดด้านบน