ওয়েল, দেখা যাচ্ছে Doorknob এর GitHub, reddit ও অন্য সাইটে ব্যবহারকারী নাম হল KeyboardFire । এটি আমাকে ধারণা দেয় ...
কাজটি
আপনি বিশেষ কীবোর্ড তৈরি করে এমন একটি সংস্থা কীবোর্ডফায়ার ইনক। এ কাজ করেন। এবং "বিশেষ" দ্বারা, আমার অর্থ এই যে, যখনই আপনি কোনও কী টিপেন, আপনার বাড়ির কোনও কিছু জ্বলিয়ে দেয়! নতুন কীবোর্ডফায়ার ডোরকনব সিরিজটির সাহায্যে আগুনে জ্বলতে থাকা অবজেক্টগুলি হ'ল ডোরকনবস।
তবে , নির্বোধ সরকারী বিধিমালার কারণে আপনার ব্যবহারকারীদের তাদের বাড়ির কোন ডোরকনবগুলি আগুন জ্বলবে তা জানতে হবে।
QWERTY কীবোর্ডের একটি অংশের এই ASCII শিল্পটি বিবেচনা করুন:
1|2|3|4|5|6|7|8|9|0
q|w|e|r|t|y|u|i|o|p
a|s|d|f|g|h|j|k|l
z|x|c|v|b|n|m
( |
এটি কীগুলির মধ্যে সীমানা উপস্থাপন করে))
আমরা এই সঠিক ASCII অঙ্কনকে বাছাইয়ের "গ্রাফ" হিসাবে বিবেচনা করতে পারি, যেখানে পরিসরের প্রতিটি বর্ণের [a-z0-9]
একটি x (অনুভূমিক) এবং y (উল্লম্ব) সূচক রয়েছে, যেখানে (0,0)
রয়েছে 1
। উদাহরণস্বরূপ, চিঠির d
স্থানাঙ্ক রয়েছে (2,6)
(পাইপ এবং স্পেসগুলি স্থানাঙ্ক গণনায় অন্তর্ভুক্ত করা হয়)।
এখন প্রতিটি ব্যবহারকারীর বাড়ি সম্পর্কে চিন্তা করা যাক। প্রতিটি ঘর 20x4 এএসসিআইআই আর্ট হিসাবে টপ-ডাউন ভিউ আঁকতে পারে (এই বিশ্বে যেখানে ধ্বংসাত্মক কীবোর্ডগুলি বিক্রয় করা আইনী, প্রতিটি বাড়ি একই আকারের হয়)। আমরা D
বাড়ির প্রতিটি ডোরকনব অবস্থানগুলি চিহ্নিত করতে ব্যবহার করতে পারি । এখানে একটি উদাহরণ:
D D D D
D
D D
আমরা এটিকে "ঘরের মানচিত্র" বলব। (হ্যাঁ, এটি অনেকগুলি ডোরকনবস!)
যে কোনও কী টিপলে আগুনে নিকটতম ডোরকনব জ্বলবে। উদাহরণস্বরূপ, আমরা যদি চিঠির পূর্ববর্তী স্থানাঙ্কগুলি গ্রহণ করি d
তবে নিকটতম ডোরকনব (ম্যানহাটান দূরত্বের দ্বারা) স্থানাঙ্কে রয়েছে (1,4)
। এই ডোরকনব d
হ'ল চিঠিটি আঘাত করা হলে আগুন জ্বলবে । আমরা যদি জ্বলন্ত ডুরকনবকে একটি দিয়ে চিহ্নিত করি F
তবে ফলাফলটি হবে:
D D D D
F
D D
চশমা
আপনার প্রোগ্রামে দুটি ইনপুট লাগবে:
- প্যাটার্নের সাথে মেলে এমন একটি স্ট্রিং
[a-z0-9]+
। - একটি বাড়ির মানচিত্র। এটি স্ট্রিং, স্ট্রিংগুলির তালিকা বা সমতুল্য কিছু হতে পারে।
আপনাকে স্ট্রিংয়ের প্রতিটি অক্ষর দিয়ে যেতে হবে এবং আগুনে সম্পর্কিত ডোরকনবকে আলোকিত করতে হবে (এর চিঠিটি একটিতে পরিবর্তন করুন F
)। যদি নিকটস্থ ডোরকনব ইতিমধ্যে আগুন লেগে থাকে তবে এটি যেমন রয়েছে তেমন ছেড়ে দিন। এই পদ্ধতিটি ব্যবহার করে যদি 1 টিরও বেশি ডোরকনব আগুনে জ্বলতে পারে তবে আপনি যেটি চান তা আলোকিত করতে পারেন।
পুরো স্ট্রিংটি এই পদ্ধতিতে প্রক্রিয়া করার পরে, আপনাকে ফলস্বরূপ বাড়ির মানচিত্রটি মুদ্রণ করতে হবে।
কোড-গল্ফ, তাই সংক্ষিপ্ততম প্রোগ্রামের জয়। যথারীতি স্ট্যান্ডার্ড লুফোলগুলি নিষিদ্ধ করা হয়েছে।
উদাহরণ
স্ট্রিং:
helloworld123
ঘরের মানচিত্র:
D D D D
D
D D
সম্ভাব্য ফলাফল:
F F F D
F
D F
বা:
F D F D
F
D F
বা:
F F D D
F
F F
বা:
F D D D
F
F F
সম্পাদনা: আহ ... আমার কাছে একটি উত্তর আছে এমন একটি কারণ আছে, এমনকি একটি +50 অনুগ্রহ সহ? আপনি যদি দিকনির্দেশগুলি জটিল / অস্পষ্ট দেখতে পান তবে আপনি মন্তব্য বা কিছু পোস্ট করলে আমি খুশি হব ... বা আমি কিছু ভুল করছি ...
সম্পাদনা 2: এক দিনের অধীনে অনুগ্রহের মেয়াদ শেষ হবে! অন্য কিছু পোস্ট করুন! অনুগ্রহ! অনুগ্রহ!!!! :(
d
কর্ডগুলি (2, 6) এবং (2, 2) নয়? ২) উদাহরণটিতে এতগুলি সম্ভাব্য উত্তর রয়েছে কেন? 3) আপনি কীভাবে জিনিসগুলিতে আগুন জ্বলবে তা ব্যাখ্যা করার সময়, আপনি এমনকি কেন কথা বলছেনd
? কেন কেবল সোজা হয়ে বলা হয়নি যে টিপলেa
কিছু বাড়িতে আগুন জ্বলবে? নাd
এটা খুব না?