ฟรีดแมนจำนวนเป็นจำนวนเต็มบวกที่เท่ากับการแสดงออกที่ไม่น่ารำคาญซึ่งใช้ตัวเลขของตัวเองในการรวมกันกับการดำเนินงาน +, -, *, / ^ วงเล็บและเรียงต่อกัน
Nice Friedman Number เป็นจำนวนเต็มบวกที่เท่ากับนิพจน์ที่ไม่สำคัญซึ่งใช้ตัวเลขของตัวเองร่วมกับการดำเนินการเดียวกันโดยมีตัวเลขตามลำดับดั้งเดิม
หมายเลข Friedman ที่ดีมาก (VNFN) ซึ่งฉันประดิษฐ์ที่นี่คือหมายเลข Nice Friedman ที่สามารถเขียนได้โดยไม่ต้องมีส่วนที่ค่อนข้างน้อย (ในความคิดของฉัน) ในการแสดงออก ไม่อนุญาตให้ใช้วงเล็บ, การต่อกันและการปฏิเสธแบบเอกนารี
สำหรับความท้าทายนี้มีวิธีที่เป็นไปได้สามวิธีในการเขียนนิพจน์โดยไม่มีวงเล็บ
คำนำหน้า:สิ่งนี้เทียบเท่ากับการเชื่อมโยงทางซ้าย ประเภทของนิพจน์นี้เขียนด้วยตัวดำเนินการทั้งหมดทางด้านซ้ายของตัวเลข ตัวดำเนินการแต่ละตัวใช้กับนิพจน์สองข้อต่อไปนี้ ตัวอย่างเช่น
*+*1234 = *(+(*(1,2),3),4) = (((1*2)+3)*4) = 20
VNFN ที่สามารถเขียนด้วยวิธีนี้คือ 343:
^+343 = ^(+(3,4),3) = ((3+4)^3) = 343
Postfix:นี่เทียบเท่ากับการเชื่อมโยงทางขวา มันเหมือนกับสัญลักษณ์คำนำหน้ายกเว้นว่าการดำเนินการไปทางขวาของตัวเลข แต่ละโอเปอเรเตอร์ใช้กับนิพจน์ก่อนหน้าทั้งสอง ตัวอย่างเช่น
1234*+* = (1,(2,(3,4)*)+)* = (1*(2+(3*4))) = 14
VNFN ที่สามารถเขียนด้วยวิธีนี้คือ 15655:
15655^+** = (1,(5,(6,(5,5)^)+)*)* = (1*(5*(6+(5^5)))) = 15655
มัด:สัญกรณ์ Infix ใช้คำสั่งมาตรฐานของการดำเนินงานสำหรับการดำเนินงานห้าประการ สำหรับจุดประสงค์ของการท้าทายลำดับการดำเนินการนั้นจะถูกกำหนดไว้ดังนี้: วงเล็บ^
ก่อนขวาเชื่อมโยงกัน จากนั้นวงเล็บ*
และ/
พร้อมกันออกจากกัน ในที่สุดวงเล็บ+
และ-
พร้อมกันซ้ายเชื่อมโยงกัน
1-2-3 = (1-2)-3 = -4
2/3*2 = (2/3)*2 = 4/3
2^2^3 = 2^(2^3) = 256
1^2*3+4 = (1^2)*3+4 = 7
VNFN ที่สามารถเขียนด้วยวิธีนี้คือ 11664:
1*1*6^6/4 = (((1*1)*(6^6))/4) = 11664
ถาม:ได้รับจำนวนเต็มบวกถ้ามันสามารถแสดงเป็นนิพจน์ที่ไม่น่าสนใจของตัวเลขของตัวเองในสัญกรณ์คำนำหน้ามัดหรือ postfix Postfix แสดงออกว่า ถ้าไม่ส่งออกอะไร
การชี้แจง:ถ้าเป็นไปได้หลายตัวแทนคุณอาจส่งออกชุดย่อยที่ไม่ว่างของพวกเขา ตัวอย่างเช่น 736 เป็น VNFN:
+^736 = 736
7+3^6 = 736
+^736
, 7+3^6
หรือทั้งสองทั้งหมดจะเป็นผลที่ยอมรับได้
นิพจน์ "เล็กน้อย" หมายถึงนิพจน์ที่ไม่ได้ใช้โอเปอเรเตอร์ใด ๆ สิ่งนี้เกี่ยวข้องกับตัวเลขหนึ่งหลักเท่านั้นและหมายความว่าตัวเลขหนึ่งหลักไม่สามารถเป็น VNFN ได้ สิ่งนี้สืบทอดมาจากคำจำกัดความของหมายเลขฟรีดแมน
คำตอบควรทำงานในไม่กี่วินาทีหรือนาทีในอินพุตต่ำกว่าหนึ่งล้าน
IO:กฎ IO มาตรฐาน โปรแกรมฟังก์ชั่นเต็มคำกริยาหรือคล้ายกัน STDIN, บรรทัดคำสั่ง, ฟังก์ชั่นการโต้แย้งหรือคล้ายกัน สำหรับการแสดงผล "ไม่มีอะไร" สตริงว่างบรรทัดว่างnull
หรือสิ่งที่คล้ายกันและการรวบรวมที่ว่างเปล่านั้นใช้ได้ทั้งหมด เอาต์พุตอาจเป็นตัวคั่นสตริงด้วยอักขระที่ไม่สามารถนำเสนอหรืออาจเป็นชุดของสตริง
ตัวอย่าง:
127
None
343
^+343
736
736^+
7+3^6
2502
None
15655
15655^+**
11664
1*1*6^6/4
1^1*6^6/4
5
None
เกณฑ์การให้คะแนน:นี่คือรหัสกอล์ฟ ไบต์ที่น้อยที่สุดจะเป็นผู้ชนะ
นอกจากนี้หากคุณพบโปรดให้หมายเลขฟรีดแมนที่ดีมากในคำตอบของคุณ
Parentheses, concatenation and unary negation are disallowed.
*(+(*(1,2),3,4)
หายไปหนึ่ง paren ปิดหลังจาก,3