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