Categories
Medium Problems

โจทย์ข้อที่ MX0070

จงเขียนฟังก์ชั่นที่รับค่า array ของจำนวนเต็มไป แล้วส่งค่าจากการลบค่าต่ำสุดและสูงสุดออกไป แล้วนำจำนวนที่เหลือมาคำนวณค่าเฉลี่ยออกมา

Examples

trimmedAverages([4, 5, 7, 100]) ➞ 6 // Average of 5 and 7

trimmedAverages([10, 25, 5, 15, 20]) ➞ 15 // Average of 10, 15 and 20

trimmedAverages([1, 1, 1]) ➞ 1 // 1

trimmedAverages([5, 4, 54, 4, 6, 46, 56]) ➞ 23

Categories
Medium Problems

โจทย์ข้อที่ MX0069

จงเขียนฟังกชั่น isPrefix(word, -prefix) และ isSuffix(word,-suffix) โดยในฟังก์ชั่น isPrefix จะต้องส่งค่า true ออกมาหาก word นั้นขึ้นต้นด้วย prefix นอกนั้นเป็น false และสำหรับฟังก์ชั่น isSuffix จะต้องส่งค่า true ออกมาหาก word นั้นลงท้ายด้วย suffix นอกนั้นเป็น false

Examples

isPrefix(” automation”,”auto-“) ➞ true

isSuffix(“arachnophobia”,”-phobia”) ➞ true

isPrefix(“retrospect”,”sub-“) ➞ false

Categories
Medium Problems

โจทย์ข้อที่ MX0068

จงเขียนฟังก์ชั่นที่รับค่า arr1 และ arr2 เข้าไป แล้วส่งค่า true ออกมา หาก arr1 นั้นอยู่ใน arr2 (สมาชิกที่น้อยที่สุดของ arr1 มากกว่า สมาชิกที่น้อยที่สุดของ arr2 และสมาชิกที่มากที่สุดของ arr1 น้อยกว่า สมาชิกที่มากที่สุดของ arr2) นอกนั้นให้ส่ง false ออกมา

Examples

canNest([1, 2, 3, 4], [0, 6]) ➞ true

canNest([3, 1], [4, 0]) ➞ true

canNest([9, 9, 8], [8, 9]) ➞ false

canNest([1, 2, 3, 4], [2, 3]) ➞ false

Categories
Medium Problems

โจทย์ข้อที่ MX0067

จงเขียนฟังก์ชั่นที่รับค่า array ของจำนวนเต็มเข้าไป แล้วส่ง array ใหม่ออกมา โดยที่สมาชิกแต่ละตัวเกิดจากผลรวมของสมาชิกตัวก่อนหน้าบวกกับตัวนั้น

Examples

cumulativeSum([1, 2, 3]) ➞ [1, 3, 6]

cumulativeSum([1, -2, 3]) ➞ [1, -1, 2]

cumulativeSum([3, 3, -2, 408, 3, 3]) ➞ [3, 6, 4, 412, 415, 418]

Categories
Medium Problems

โจทย์ข้อที่ MX0066

จงเขียนฟังก์ชั่นที่รับค่า x กับ ผลลัพธ์เข้าไป แล้วให้หาว่า เลข x นั้นตอนยกกำลังเท่าไหร่ถึงจะได้ผลลัพธ์ตามที่ส่งเข้าไป

Examples

solveForExp(4, 1024) ➞ 5

solveForExp(2, 1024) ➞ 10

solveForExp(9, 3486784401) ➞ 10