चुनौती
कभी उन फिल्म के ट्रेलर टाइटल (जैसे मार्टियन, इंटरस्टेलर, आदि) देखे गए हैं, जहां उन्हें अक्षरों के बीच में धीरे-धीरे फैलते हुए भारी अंतराल है?
पत्र के बीच में उचित मात्रा में रिक्त स्थान डालकर, एक स्ट्रिंग, गैप गुणक और दिशा दिए गए इस प्रभाव को फिर से बनाना चुनौती है।
उदाहरण
इनपुट : 'इंटरस्टेलर', गैप गुणक: 1.0, दिशा: आवक बढ़ रही है
Output: I N T E R S T E L L A R
रिक्ति है: [1, 2, 3, ..., 3, 2, 1]; के साथ रिक्त स्थान की जगह '।' बेहतर रिक्ति को प्रदर्शित करने के लिए:
I.N..T...E....R.....S......T.....E....L...L..A.R
इनपुट : 'इंटरस्टेलर', गैप गुणक: 0.5, दिशा: आवक बढ़ रही है
Output: IN T E R S T E L L AR
अंतर 0.5 से गुणा किया जाता है, इसलिए हम पूर्णांक विभाजन से [0, 1, 1, 2, ... 2, 1, 1, 0] प्राप्त करते हैं; '' का उपयोग कर:
IN.T.E..R..S...T..E..L.L.AR
इनपुट : 'CODEGOLF', गैप मल्टीप्लायर: 2.0, डायरेक्शन: इनकाउंटरिंग आउटवर्ड
Output: C O D E G O L F
रिक्ति को 2 से गुणा किया जाता है, बाहर की ओर बढ़ता है, इसलिए हमें [8,6,4,2,4,6,8] मिलते हैं; की जगह '।':
C........O......D....E..G....O......L........F
इनपुट : 'CODEGOLF', गैप मल्टीप्लायर: 0.4, दिशा: बाहरी वृद्धि
Output: C O DEGO L F
अंतर को 0.4 से गुणा किया जाता है, बाहर की ओर बढ़ता है, इसलिए हमें [1,1,0,0,0,1,1] मिलता है; की जगह '।':
C.O.DEGO.L.F
नियम
- 3 इनपुट लेता है: स्ट्रिंग, गैप गुणक और दिशा
- यदि इनपुट स्ट्रिंग लंबाई में विषम है (# अंतराल में भी) जैसे 'हेलो', तो आंतरिक सबसे अधिक 2 अंतराल का अंतर समान होना चाहिए
H E L L O
- आप चाहते हैं कि दिशा और अंतराल गुणक को पार्स किया जा सकता है, जैसे आप -2 का उपयोग '2 के गुणक के साथ आवक में वृद्धि' के रूप में कर सकते हैं, 1 के रूप में '1 के गुणक के साथ बाहर की ओर बढ़ते' आदि।
- यह केवल रिक्त स्थान का उपयोग करने के लिए आवश्यक है, हालांकि यह एक बोनस है यदि चरित्र भरने योग्य है।
संदर्भ एनीमेशन
मज़ा गोल्फ है!
C..O....D......E........G......O....L..F
Increasing
इसे थोड़ा सरल बनाना चाहते1 => Inward, 0 => Outward
हैं।