कोइनहोल्ट के रहस्यमय गाँव में आप अपनी बेकरी के काउंटर के पीछे खड़े हैं और पेस्ट्रियों की एक ताज़ा खेप सजा रहे हैं। दरवाज़ा चरमराकर खुलता है, और अंदर डेनारा आती है, जो गुणवत्ता वाले सामान की परख रखने वाली एक कुशल व्यापारी है। जल्दी से खाना खा लेने के बाद वह काउंटर पर एक चमकता सिक्का सरका देती है, जिसकी वैल्यू 100 इकाई है।
आप मुस्कुराते हुए सिक्का लेते हैं और खाने की कुल कीमत पर नज़र डालते हैं: 88 इकाई। इसका मतलब है कि आपको 12 इकाई का बाकी लौटाना है।
डेनारा उम्मीद भरी नज़र से अपना हाथ आगे बढ़ाती है। "मुझे बस सबसे कम सिक्के दीजिए," वह मुस्कुराते हुए कहती है। "मेरी थैली पहले से भरी हुई है, और मैं रास्ते में उन्हें खो देने का जोखिम नहीं लेना चाहती।"
आप जानते हैं कि आपके पास कुछ विकल्प हैं। "बाकी के लिए हमारे पास लुमिस (10 इकाई मूल्य का), विरास (5 इकाई मूल्य का), और ज़ेंथ (2 इकाई मूल्य का) उपलब्ध हैं।"
आप मन ही मन जल्दी से संभावनाएँ निकालते हैं:
"सबसे अच्छा विकल्प दो सिक्के हैं: एक लुमिस और एक ज़ेंथ," आप कहते हैं और उसे बाकी सौंप देते हैं।
डेनारा मुस्कुराती है, साफ़ तौर पर प्रभावित। "हमेशा की तरह, आपने बिल्कुल सही किया।"
ग्राहक को दिए जाने वाले सिक्कों की सबसे कम संख्या तय कीजिए, जिनके मूल्यों का जोड़ बाकी राशि के बराबर हो।
| रजिस्टर | उपयोग | टाइप | विवरण |
|---|---|---|---|
$a0 |
इनपुट | पूर्णांक | इनपुट सिक्कों की संख्या |
$a1 |
इनपुट | पूर्णांक | लक्ष्य |
$a2 |
इनपुट/आउटपुट | एड्रेस | सिक्कों के शब्दों का ऐसा ऐरे जिसे बदला जा सके |
$v0 |
आउटपुट | पूर्णांक | आउटपुट सिक्कों की संख्या, इनपुट अमान्य होने पर -1 |
$t0-9 |
अस्थायी | कोई भी | अस्थायी भंडारण के लिए इस्तेमाल होता है |
Exercism पर साइन अप कीजिए और MIPS Assembly को 70 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।