ทรัมเป็ตเป็นเครื่องดนตรี aerophone valved B♭
มักจะตั้งค่ายอยู่ เสียงจะเกิดขึ้นเมื่อผู้เล่นสั่นริมฝีปากเพื่อไล่อากาศออกจากเครื่องดนตรี การสั่นสะเทือนนั้นเกิดขึ้นได้จากการตั้งปากในลักษณะเฉพาะเรียกว่าการสัมผัส การตกแต่งที่แตกต่างกันด้วยริมฝีปากที่แน่นหรือแน่น
นอกจากนี้แต่ละวาล์วในทรัมเป็ตยังเปลี่ยนระดับเสียงของเครื่องดนตรี เมื่อหดหู่วาล์วจะปิดทางเดินภายในท่อของเครื่องมือทำให้อากาศไหลผ่านทางที่ยาวขึ้นซึ่งจะลดระดับเสียงของเสียงต้นฉบับ สำหรับจุดประสงค์ของการท้าทายนี้เราจะพิจารณาถึงมาตรฐานB♭
ทรัมเป็ตซึ่งวาล์วตัวแรกลดระดับเสียงลงด้วยขั้นตอนเต็มขั้นที่สองจะลดระดับเสียงลงครึ่งก้าวและอีกระดับหนึ่งลดระดับเสียงลงหนึ่งและหนึ่ง ครึ่งก้าว
ความท้าทาย
ความท้าทายของคุณคือการสร้างโปรแกรมหรือฟังก์ชั่นที่กำหนดอินพุตสองตัวembouchure
และvalves
กำหนดระดับเสียงของโน้ตที่กำลังเล่น
สำหรับจุดประสงค์ของการท้าทายบันทึกย่อจะเป็นไปตามลำดับ:
B♭, B, C, C♯, D, E♭, E, F, F♯, G, G♯, A.
กฎระเบียบ
- I / O สามารถนำ / รับในวิธีการที่เหมาะสม
- ช่องโหว่มาตรฐานใช้
- คุณได้รับอนุญาตให้ใช้
b
และ#
แทน♭
และ♯
ถ้าคุณต้องการ - อินพุต
valves
สามารถถูกใช้เป็นรายการของวาล์วที่หดหู่ (1, 3
) หรือรายการบูลีน (1, 0, 1
) - นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุดในแต่ละภาษาจะชนะ
กรณีทดสอบ:
Valves
ในกรณีทดสอบเหล่านี้จะได้รับเป็นรายการบูลีนที่ 0 หมายถึงหดหู่และ 1 หมายถึงกด
Embouchure: Valves: Output:
B♭ 0 0 0 B♭
B♭ 0 1 0 A
B♭ 1 0 1 F
C♯ 0 0 1 B♭
C♯ 1 1 1 G
E♭ 1 0 0 C♯
G 0 1 1 E♭
G♯ 1 0 0 F♯
G♯ 0 0 1 F
G 1 0 0 F
F♯ 1 0 0 E
D 1 0 1 A
A 1 1 1 E♭
E 1 1 0 C♯
E 0 0 1 C♯
ข้อจำกัดความรับผิดชอบ:ฉันยังไม่ได้เป็นนักดนตรีมากนักดังนั้นฉันต้องขออภัยในความผิดพลาดใด ๆ ที่ฉันอาจทำในกรณีทดสอบ การแก้ไขจะชื่นชม
F# 100
เป็น E ไม่ใช่ F หรือ
C#
กับทรัมเป็ตได้โดยไม่ต้องกดวาล์วใด ๆ เพียงแค่บันทึกเฉพาะ ( B♭-F-B♭-D-F-A♭-B♭...
) B♭
ชุดรองของ ถึงแม้ว่ามันจะไม่ได้สะท้อนถึงอุปกรณ์ที่ใช้จริงความท้าทายก็ถูกกำหนดไว้อย่างสมบูรณ์แบบ