আধুনিক গেম কনসোলগুলি এবং traditionalতিহ্যবাহী কীবোর্ডবিহীন অন্যান্য ডিভাইসে, পাঠ্যের ইনপুট দেওয়ার চেষ্টা করা দুঃস্বপ্ন। ভার্চুয়াল কীবোর্ডে কয়েকটি বোতাম এবং জয়স্টিক দিয়ে টাইপ করা বিরক্তিকর এবং আমি যতটা সম্ভব আন্দোলন / বোতাম টিপতে চাই।
আপনি যে কীবোর্ডটি ব্যবহার করবেন তা দেখতে এমন দেখাচ্ছে:
+---+---+---+---+---+---+---+---+---+---+
| 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 | _ | @ | . |
+---+---+---+---+---+---+---+---+---+---+
নিম্নলিখিত ক্রিয়াকলাপগুলি ব্যবহার করা যেতে পারে:
L
: কীবোর্ডের বাম দিকে একটি বর্গ সরান (মোড়ানো)R
: কীবোর্ডের ডানদিকে একটি বর্গ সরান (মোড়ক)U
: কীবোর্ডে একটি স্কোয়ার উপরে সরান (মোড়ক)D
: কীবোর্ডের এক বর্গাকার নীচে সরান (মোড়ানো)Y
: একটি স্থান .োকানB
: সন্নিবেশ পয়েন্টারটি একটি স্থান বাম দিকে সরান (পয়েন্টার শুরুতে থাকলে কিছুই করে না)F
: সন্নিবেশ পয়েন্টারটি একটি স্থান ডান দিকে সরান (পয়েন্টার শেষে থাকলে কিছুই করে না)C
: ক্যাপস লক টগল করুনA
: সন্নিবেশ পয়েন্টারের অবস্থানে নির্বাচিত অক্ষরটি সন্নিবেশ করান
উপরের কীবোর্ড এবং কমান্ডগুলি (মিলগুলি [a-zA-Z0-9 _@.-]*
) ব্যবহার করে টাইপ করা যেতে পারে এমন একটি ইনপুট স্ট্রিং দেওয়া হয়েছে, আউটপুট স্ট্রিংয়ের ফলস্বরূপ কমান্ডগুলির একটি ক্রম আউটপুট দেয়। কার্সারের প্রাথমিক অবস্থান 1
কী (শীর্ষ-বাম) এ রয়েছে এবং প্রাথমিকভাবে ক্যাপস লক বন্ধ রয়েছে।
স্কোরিং
যে কোনও স্ট্রিংয়ের জন্য, একটি নির্দোষ পন্থা হ'ল স্ট্রিংয়ের প্রতিটি চরিত্রের জন্য, কীবোর্ডের স্বল্পতম পাথরে অক্ষরে নেভিগেট করতে, প্রয়োজনে ক্যাপস লক টগল করুন এবং অক্ষরটি নির্বাচন করুন। এই জাতীয় নিষ্প্রভ পদ্ধতি দৈর্ঘ্যের একটি আদেশ জেনারেট করে (length of input string) + (sum of Manhattan distances on keyboard between consecutive non-space characters) + (number of times the string alternates between lowercase and uppercase characters) + (1 if string starts with an uppercase letter else 0)
। উদাহরণস্বরূপ, এর জন্য নির্লজ্জ পদ্ধতির 101
ফলস্বরূপ ALARA
, একটি দৈর্ঘ্য 5 কমান্ড এবং Noob 5
ফলস্বরূপ DDDRRRRRCAUURRRCAADDLLLLAYUUUA
, একটি দৈর্ঘ্য 30 কমান্ড আসবে।
আপনার জমাটি যাইহোক, নিষ্পাপ পদ্ধতির চেয়ে ভাল করার চেষ্টা করে। প্রতিটি ইনপুট স্ট্রিংয়ের জন্য, আপনার জমাটি কমান্ডের সংখ্যার সমান পয়েন্ট পাবেন নিখুঁত দৃষ্টিভঙ্গি আপনার জমা দেওয়ার আউটপুটগুলিকে বিয়োগের সংখ্যার কম ব্যবহার করে। আপনার সামগ্রিক স্কোরটি পৃথক স্কোরগুলির সমষ্টি হবে।
বিধি
- জমাগুলি একটি ক্লাউড 9 ফ্রি ভার্চুয়াল ওয়ার্কস্পেসে পরিচালিত হবে । ওয়ার্কস্পেসে 512 এমবি র্যাম, 2 গিগাবাইট ডিস্ক স্পেস, 8 ইন্টেল (আর) জিওন (আর) সিপিইউস @ 2.50 গিগাহার্জ (সম্পূর্ণ সিপিইউ তথ্য, দৌড়তে পাওয়া
cat /proc/cpuinfo
যায়, এখানে পাওয়া যাবে ), এবং 64-বিট উবুন্টু 14.04 চলছে is বিশ্বাসভাজন। আপনার জমাটি চালানোর জন্য এবং স্কোর করার জন্য আপনি পরীক্ষার কর্মক্ষেত্রে অ্যাক্সেসের অনুরোধ করতে পারেন বা আমি এটি আপনার জন্য স্কোর করতে পারি। - পরীক্ষার ক্ষেত্রে প্রতিবেদন জমা দেওয়া হবে। রানের মধ্যে স্টেট স্টোর করা নিষিদ্ধ। প্রয়োজনীয়তাগুলি ইনপুট ফাইলটি পড়ার সম্ভাব্য ব্যতিক্রম সহ উত্স ফাইল (যা রানের মধ্যে সংশোধন করা যায় না) ব্যতীত অন্য কোনও ফাইল থেকে লিখতে বা পড়তে পারে না missions
- প্রতিটি পরীক্ষার ক্ষেত্রে সাবমিশন রানটাইমের 1 মিনিটের মধ্যে সীমাবদ্ধ। জমাগুলি একাধিক সমাধান আউটপুট করতে পারে তবে বরাদ্দ সময়ের মধ্যে কেবলমাত্র শেষ বৈধ সমাধানটি স্কোরিংয়ের জন্য ব্যবহৃত হবে। নির্ধারিত সময়ের মধ্যে কোনও বৈধ সমাধান আউটপুট ব্যর্থতার ফলে সেই পরীক্ষার ক্ষেত্রে 0 এর স্কোর দেখাবে।
- দয়া করে আপনার জমা দেওয়ার অনুরোধ সম্পর্কিত দিকনির্দেশগুলি পাশাপাশি এমন কোনও সরঞ্জাম / লাইব্রেরি অন্তর্ভুক্ত করুন যা স্ট্যান্ডার্ড উবুন্টু 14.04 ইনস্টলের সাথে অন্তর্ভুক্ত নয় installed
- বিজয়ী সবচেয়ে বড় স্কোর সহ জমা দেওয়া হবে। টাই হওয়ার ক্ষেত্রে আরও ভাল অ্যালগরিদমিক জটিলতার সাথে জমাটি জিতবে। টাইটি এখনও সমাধান না হলে স্কোর এবং অ্যালগরিদমিক জটিলতায় পৌঁছানোর প্রথম জমাটি জিতবে।
- জমা পরীক্ষার ক্ষেত্রে উপযুক্ত হতে পারে না। আমি যদি প্রয়োজন অনুভব করি তবে পরীক্ষার কেসগুলি পরিবর্তন করার অধিকার আমি সংরক্ষণ করি।
পরীক্ষার মামলা
বিন্যাস: input string => naive score
(আপনি যদি এগুলিতে কোনও ত্রুটি দেখতে পান তবে সংশোধন করে একটি মন্তব্য দিন)
101 => 5
quip => 12
PPCG => 15
Mego => 25
Noob 5 => 26
penguin => 27
867-5309 => 32
2_sPoOkY_4_mE => 60
The Nineteenth Byte => 76
penguins@SouthPole.org => 95
8xM3R__5ltZgrkJ.-W b => 98
correcthorsebatterystaple => 104
verylongRUNSOFCAPSandnocaps => 118
This is an English sentence. => 122
WNtza.akjzSP2GI0V9X .0epmUQ-mo => 131
Programming Puzzles and Code Golf => 140