पोकर में शिष्टाचार होता है कि आप अपने चिप्स की व्यवस्था कैसे करते हैं, अक्सर टूर्नामेंटों में लागू किया जाता है - आपके चिप्स दूसरों के पीछे होने से आपके विरोधियों से "छिपे" नहीं हो सकते हैं, ज्यादातर कुछ बड़े संप्रदाय चिप (एस) को छिपाने के लिए नहीं।
चुनौती
हम ASCII में पोकर खेलने जा रहे हैं, इसलिए हमें एक फ़ंक्शन या प्रोग्राम लिखना होगा जो हमारे ASCII चिप स्टैक की व्यवस्था को आकर्षित करेगा, जिसका कुल मूल्य दिया गया है n
।
इनपुट
- एक सकारात्मक पूर्णांक, n
(ऊपर से 2**32-1
संभाला जाना चाहिए)
आउटपुट
- नीचे बताए अनुसार स्टैक व्यवस्था का एक ASCII प्रतिनिधित्व।
इसमें प्रत्येक पंक्ति के दाईं ओर सफ़ेद-स्थान हो सकते हैं जैसे कि कोई भी रेखा सबसे लंबी (सबसे नीचे) रेखा में मुद्रण योग्य वर्णों द्वारा उपयोग की जाने वाली लंबाई की तुलना में एक वर्ण से अधिक लंबी नहीं होती;
इसमें एक एकल अनुगामी नई पंक्ति शामिल हो सकती है; और
यदि आप चाहें तो चिप्स का प्रतिनिधित्व करने वाले अक्षर लोअरकेस में हो सकते हैं।
स्टैक व्यवस्था होगी:
- सबसे कम संभव चिप्स को शामिल करें, जिसे मूल्यवर्ग (नीचे देखें) दिया गया है;
- "स्टैक" (कॉलम) में समान मूल्यवान चिप्स होंगे;
- ऐसे आदेश दें कि छोटे स्टैक लंबे स्टैक के दाईं ओर हों; तथा
- ऐसे आदेश दें कि अधिक मूल्यवर्ग के चिप्स के साथ ढेर निचले संप्रदायों के बराबर आकार के ढेर के दाईं ओर होंगे (यह दर्शाता है कि वे दाईं ओर हमारे प्रतिद्वंद्वी (एस) को दिखाई देते हैं)
चिप्स को स्वयं उनके रंग की पहचान करने वाले अलग-अलग पात्रों के रूप में दर्शाया जाना है:
White : 1 = W
Red : 5 = R
Green : 25 = G
Black : 100 = B
Yellow : 500 = Y
Pink : 1K = P
Orange : 5K = O
Cyan : 25K = C
Magenta : 100K = M
Aqua-blue : 500K = A
Lavender : 1M = L
Indigo : 5M = I
Turquoise : 25M = T
Violet : 100M = V
Silver : 500M = S
उदाहरण
के लिए n = 276,352
चिप्स का सबसे छोटी संख्या होगा:
2 * 100K + 3 * 25K + 1 * 1K + 3 * 100 + 2 * 25 + 2 * 1
MM CCC P BBB GG WW
एकल P
पर अब तक ठीक है, जाना चाहिए
तो आकार के तीन ढेर 2
अगले जाना चाहिए,
- लेकिन MM
सही द्वारा पीछा करने के लिए दूर जाना चाहिए GG
और उसके बाद WW
के बाद से 100K > 25 > 1
तो आकार के दो ढेर 3
बाईं तरफ जाने,
- लेकिन CCC
जरूरी के BBB
बाद से सही करने के लिए जाओ25K > 100
अब हमें अपना उत्पादन करने के लिए इन चिप्स को वास्तविक ढेर में रखना चाहिए:
BC
BCWGM
BCWGMP
परीक्षण के मामलों
Input:
1
Output:
W
Input:
9378278
Output:
L
LWGPCM
LWGPCMB
LWGPCMBI
Input:
22222222
Output:
ROI
ROI
ROIWBPML
ROIWBPML
Input:
1342185143
Output:
WRCIV
WRCIVOLS
WRCIVOLSGBMT
Input:
2147483647
Output:
RMIS
RMISPC
RMISPCWL
RMISPCWLGBYOTV
Input:
4294967295
Output:
S
S
S
S
SRML
SRMLGOIT
SRMLGOITBPCV
SRMLGOITBPCVA
यह कोड-गोल्फ है , इसलिए बाइट्स जीत में सबसे छोटा कोड है। कोई खामियां नहीं हैं, यादा यदा, तुम ड्रिल जानते हो।
2**31-1
, या आपके हस्ताक्षरित int
प्रकारों से बड़ा होने का इरादा है ?
2**32-1
कि एक परीक्षण मामला है, लेकिन मैं इसे कम करने के लिए तैयार हूं। (दिलचस्प तथ्य: पोकरस्टार के 25B
चित्र फ़ोल्डर में एक चिप है।)