পটভূমি
আপনার বন্ধু, একজন ভাষাবিদ, বিভিন্ন ভাষায় কিছু সাধারণ কথোপকথনের স্নিপেট রেকর্ড ও বিশ্লেষণ করেছেন। বেশ অনুপস্থিত মনের কারণে তারা ভুলে গেছে যে প্রতিটি স্নিপেটটি কোন ভাষায় ছিল You আপনাকে অবশ্যই একটি প্রোগ্রাম তৈরি করে তাদের সহায়তা করতে হবে যা বাক্য কাঠামোর বিশ্লেষণ করে এবং অসম্ভব কেসগুলিকে নিয়ম করে দেয়।
ইনপুট
আপনার ইনপুট হ'ল অক্ষরযুক্ত স্ট্রিং SVO
যা অক্ষরগুলি অন্তর্ভুক্ত করে , যা বিষয় , ক্রিয়া এবং অবজেক্টের জন্য দাঁড়িয়ে । এটি ভাষাতত্ত্ববিদ বিশ্লেষণ করা কথোপকথনের স্নিপেটের প্রতিনিধিত্ব করে।
আউটপুট
আপনার কাজটি হ'ল স্ট্রিংটিকে বাক্যে ভাঙ্গা এবং .
প্রতিটি বাক্য পরে একটি সময় লিখুন । একটি বাক্যে হয় একটি ক্রিয়া, বা একটি ক্রিয়া এবং একটি বিষয়, বা একটি ক্রিয়া, একটি বিষয় এবং একটি বিষয়। তবে, আপনি জানেন না যে কোন শব্দটি মূল ভাষাটি ব্যবহার করে; ইংরেজি সাবজেক্ট-ক্রিয়া-অবজেক্ট ব্যবহার করে তবে লাতিনের মতো অন্যান্য ভাষা সাবজেক্ট-অবজেক্ট-ক্রিয়া ব্যবহার করে । প্রকৃতপক্ষে, সমস্ত ছয়টি ক্রমগুলি প্রাকৃতিক ভাষায় বিদ্যমান, সুতরাং আপনার অবশ্যই তাদের প্রতিটি পরীক্ষা করা উচিত।
আপনার আউটপুটটিতে একটি নতুনরেখা-বিভক্ত স্ট্রিং, প্রতিটি প্রযোজ্য শব্দ ক্রম, একটি কোলন :
এবং ইনপুট স্ট্রিংটি সেই ক্রম অনুসারে বাক্যে বিভক্ত হবে। যদি স্ট্রিংটি কিছু শব্দের ক্রমে বিশ্লেষণ করা যায় না তবে সংশ্লিষ্ট লাইনটি বাদ যাবে। লাইনের ক্রমটি কোনও ব্যাপার নয় এবং এটি গ্যারান্টিযুক্ত যে কমপক্ষে একটি শব্দের ক্রম পার্স করা যায়।
উদাহরণ
ইনপুট বিবেচনা করুন
VSVOSV
ইন VOS
অর্ডার, স্নিপেড যেমন পার্স করা যাবে VS.VOS.V.
, এবং SVO
আদেশ, এটি হিসাবে পার্স করা যাবে V.SVO.SV.
। অর্ডারটিও OSV
কাজ করে, এবং সম্পূর্ণ আউটপুট হয়
VOS:VS.VOS.V.
SVO:V.SVO.SV.
OSV:V.SV.OSV.
বিধি এবং স্কোরিং
আপনি একটি সম্পূর্ণ প্রোগ্রাম বা একটি ফাংশন লিখতে পারেন। সর্বনিম্ন বাইট গণনা জয়, এবং মান লুফোলগুলি অনুমোদিত নয়। নিয়মিত এক্সপ্রেশন এবং সমস্ত বিল্ট-ইন অনুমোদিত।
পরীক্ষার মামলা
Input:
V
Output:
VSO:V.
VOS:V.
SVO:V.
OVS:V.
SOV:V.
OSV:V.
Input:
SVV
Output:
SVO:SV.V.
SOV:SV.V.
OSV:SV.V.
Input:
VSVOV
Output:
SVO:V.SVO.V.
Input:
VSOVS
Output:
VSO:VSO.VS.
OVS:VS.OVS.
Input:
SVOSV
Output:
SVO:SVO.SV.
OSV:SV.OSV.
Input:
VSVOSV
Output:
VOS:VS.VOS.V.
SVO:V.SVO.SV.
OSV:V.SV.OSV.
Input:
VSVVSOVSV
Output:
VSO:VS.V.VSO.VS.V.
OVS:VS.V.VS.OVS.V.
SOV:V.SV.V.SOV.SV.
Input:
SVVSVSOVSVV
Output:
SOV:SV.V.SV.SOV.SV.V.
Input:
VSOVSVSOVSVVS
Output:
VSO:VSO.VS.VSO.VS.V.VS.
OVS:VS.OVS.VS.OVS.V.VS.