पृष्ठभूमि
सबसे बड़ा सामान्य भाजक ( शॉर्ट के लिए जीसीडी ) एक सुविधाजनक गणितीय कार्य है, क्योंकि इसमें कई उपयोगी गुण हैं। उनमें से एक Bézout की पहचान है : यदि d = gcd(a, b), तो वहाँ पूर्णांक xऔर yऐसे मौजूद हैं d = x*a + y*b। इस चुनौती में, आपका कार्य सरल ASCII कला के साथ इस संपत्ति की कल्पना करना है।
इनपुट
आपके इनपुट दो सकारात्मक पूर्णांक हैं aऔर b, किसी भी उचित प्रारूप में दिए गए हैं। आप अनरीट इनपुट्स (अपनी पसंद के एकल प्रिंट करने योग्य एएससीआईआई चरित्र की पुनरावृत्ति) भी ले सकते हैं, लेकिन आपको संगत होना चाहिए और दोनों इनपुटों के लिए एक ही प्रारूप का उपयोग करना होगा। इनपुट किसी भी क्रम में हो सकते हैं, और वे समान हो सकते हैं।
उत्पादन
आपका आउटपुट sलंबाई की एक स्ट्रिंग है lcm(a, b) + 1( lcm सबसे सामान्य बहु के लिए खड़ा है)। के पात्रों sसे पूर्णांकों का प्रतिनिधित्व 0करने के लिए lcm(a, b)। यदि चरित्र एक से अधिक है, या एक अवधि है, तो s[i]एक लोअरकेस हैoiab. अन्यथा । ध्यान दें कि शून्य हर संख्या का एक गुणक है। अब, Bézout की पहचान की वजह से, वहाँ पात्रों में से कम से कम एक जोड़ी हो जाएगा oमें sजिसका दूरी ठीक है gcd(a, b)। सबसे बाईं ओर की जोड़ी को अपरकेस Oएस द्वारा प्रतिस्थापित किया जाना है ; यह अंतिम आउटपुट है।
उदाहरण
इनपुट पर विचार करें a = 4और b = 6। फिर हमारे पास है , gcd(a, b) = 2और lcm(a, b) = 12इसलिए लंबाई sहोगी 13। के गुणकों aऔरb इस प्रकार हाइलाइट किया जाता है:
0 1 2 3 4 5 6 7 8 9 10 11 12
o . . . o . o . o . . . o
oदूरी दो के साथ एस के दो जोड़े हैं , लेकिन हम केवल सबसे बाएं लोगों को Oएस के साथ बदल देंगे , इसलिए अंतिम आउटपुट है
o...O.O.o...o
नियम और स्कोरिंग
आप एक पूर्ण कार्यक्रम या एक फ़ंक्शन लिख सकते हैं। सबसे कम बाइट गिनती जीतता है, और मानक खामियों को रोक दिया जाता है।
परीक्षण के मामलों
1 1 -> OO
2 2 -> O.O
1 3 -> OOoo
4 1 -> OOooo
2 6 -> O.O.o.o
2 3 -> o.OOo.o
10 2 -> O.O.o.o.o.o
4 5 -> o...OO..o.o.o..oo...o
8 6 -> o.....O.O...o...o.o.....o
12 15 -> o...........O..O........o.....o.....o........o..o...........o
19 15 -> o..............o...o..........o.......o......o...........o..o..............OO.............o....o.........o........o.....o............o.o..............o.o............o.....o........o.........o....o.............oo..............o..o...........o......o.......o..........o...o..............o
.,oयाO।) या यह होना चाहिए1? या0?