ใน CSS สีสามารถระบุได้โดย "hex triplet" - เลขฐานสิบหกสามไบต์ (หกหลัก) ที่แต่ละไบต์แทนองค์ประกอบสีแดงสีเขียวหรือสีน้ำเงินของสี ยกตัวอย่างเช่นเป็นสีแดงอย่างสมบูรณ์และเทียบเท่ากับ#FF0000
rgb(255, 0, 0)
สีสามารถแสดงด้วยเครื่องหมายแบบย่อซึ่งใช้เลขฐานสิบหกสามหลัก การจดชวเลขจะขยายเป็นรูปแบบหกหลักโดยทำซ้ำแต่ละหลัก ยกตัวอย่างเช่นจะกลายเป็น#ABC
#AABBCC
เนื่องจากมีตัวเลขน้อยลงในการจดชวเลขฐานสิบหกจึงสามารถแสดงสีได้น้อยลง
ความท้าทาย
เขียนโปรแกรมหรือฟังก์ชั่นที่ใช้รหัสสีฐานสิบหกหกหลักและส่งออกรหัสสีสามหลักที่ใกล้เคียงที่สุด
นี่คือตัวอย่าง:
- ป้อนรหัส hex: # 28a086
- องค์ประกอบสีแดง
- 0x28 = 40 (ทศนิยม)
- 0x22 = 34
- 0x33 = 51
- 0x22 ใกล้เคียงกันมากขึ้นดังนั้นรหัสแรกของรหัสสีที่สั้นลงคือ 2
- องค์ประกอบสีเขียว
- 0xa0 = 160
- 0x99 = 153
- 0xaa = 170
- 0x99 ใกล้เคียงดังนั้นหลักที่สองคือ 9
- องค์ประกอบสีน้ำเงิน
- 0x86 = 134
- 0x77 = 119
- 0x88 = 136
- 0x88 ใกล้เคียงดังนั้นหลักที่สามคือ 8
- รหัสสีที่สั้นลงคือ # 298 (ซึ่งขยายเป็น # 229988)
โปรแกรมหรือฟังก์ชั่นของคุณจะต้องยอมรับความเป็น input หกบาทรหัสสีฐานสิบหกใช้ได้กับและผลผลิตรหัสสีสามหลักใช้ได้กับ#
#
ตัวอย่าง
- # FF0000 → # F00
- # 00FF00 → # 0F0
- # D913C4 → # D1C
- # C0DD39 → # BD3
- # 28A086 → # 298
- # C0CF6F → # BC7
เกณฑ์การให้คะแนน
นี่คือความท้าทายของรหัส - กอล์ฟดังนั้นคำตอบที่สั้นที่สุดในภาษาของคุณชนะ ใช้กฎมาตรฐาน
#
เพิ่มสิ่งใดในการท้าทาย