একটি অনন্য ধাঁধা মধ্যে ড্যাকটাইলিক ষড়যন্ত্র স্ক্যান


10

বেশ কয়েক বছর ধরে একজন ভয়ঙ্কর লাতিন শিক্ষার্থী হিসাবে আমি লাতিন সম্পর্কে অনেক কিছুই ঘৃণা করতে শিখেছি। তবে আমি ভালোবাসি একটি জিনিস আছে।

ল্যাটিন স্ক্যানশন

বিস্তৃতি কবিতার একটি নির্দিষ্ট রেখার মিটার নির্ধারণের কাজ। লাতিন ভাষায় এর অর্থ হ'ল লাইনে প্রতিটি অক্ষরকে "হালকা" বা "ভারী" হিসাবে চিহ্নিত করা।

লাতিন স্ক্যানশনে অনেকগুলি বিধি রয়েছে। তবে ইংলিশের মতো লাতিন স্ক্যানশন মোটামুটি নিয়মিত এবং প্রায়শই লাতিন শব্দভাণ্ডার বা ব্যাকরণের কোনও জ্ঞানের প্রয়োজন হয় না। এই সমস্যার জন্য আমরা সেই নিয়মের সরলিকৃত উপসেট ব্যবহার করব (আসল ল্যাটিনের একটি ঝরঝরে স্পেক নেই)।

স্ক্যানশন শুরু করার আগে আপনাকে অবশ্যই এলিড করতে হবে । এলিজেন হ'ল উচ্চারণ সহজ করার জন্য শব্দের মধ্যে ড্রপিং সিলেলেবল। (যেমন "তিনি" -> "তিনি") ইংরেজি থেকে ভিন্ন, লাতিন এলিজেন খুব সুন্দর নিয়ম অনুসরণ করে।

  • স্বর দিয়ে শেষ হওয়া শব্দের চূড়ান্ত স্বর বাদ দেওয়া হয় যদি পরবর্তী শব্দটি স্বর দিয়ে শুরু হয়।

    নটা ইস্ট -> নটস্টেস্ট

  • একই শব্দটি "মি" এর পরে একটি স্বরে শেষ হওয়া শব্দের ক্ষেত্রেও যায়।

    ফিডুম কৃষিবিদ -> ফিডগ্রিকোলাম

  • শব্দ-প্রাথমিক "এইচ" এর পরে স্বরটি এলিজেনের উদ্দেশ্যে একক স্বর হিসাবে গণনা করা হয় এবং যখন সম্মতিযুক্ত তখন সর্বদা বাদ দেওয়া হয়।

    মাল্টা HORAE -> বহুবিধ

    অথবা

    মাল্টাম হোরাম -> মাল্টোরাম

এলিজেনের পরে আমরা স্ক্যানশন শুরু করতে পারি। স্ক্যান্ডিং একটি নির্দিষ্ট মিটারে করা হয়। এই চ্যালেঞ্জের মিটারটি ড্যাকটাইলিক হেক্সোমেন্স । ড্যাকটাইলিক হেক্সেসের ছয় "ফুট" প্রতিটি পায়ে দুটি বা তিনটি শব্দাংশ থাকে। স্বরবর্ণের উপর নির্ভর করে সিলেবলগুলি দীর্ঘ বা সংক্ষিপ্ত হতে পারে। প্রথম পাঁচটি পায়ে প্রত্যেকেরই হয় একটি ড্যাকটাইল, একটি দীর্ঘ উচ্চারণের পরে দুটি সংক্ষিপ্ত বা একটি স্পনিডি, দুটি দীর্ঘ উচ্চারণ থাকবে। এবং শেষ পাদদেশটি দীর্ঘস্থায়ী হবে একটি এনেসপস (সংক্ষিপ্ত বা দীর্ঘ, এই সমস্যার জন্য আপনাকে কোনটি নির্ধারণ করতে হবে না)।

  • লাতিন ভাষায় একটি স্বর ছোট বা দীর্ঘ হতে পারে

  • দুটি স্বর (যেমন eiectum) এর মধ্যে একটি "i" স্যান্ডউইচ করা একটি ব্যঞ্জনবর্ণ। (যেমন একটি "জে")

  • স্বর (যেমন Iactus) এর পরে একটি শব্দের সূচনা হওয়া একটি "আমি" ব্যঞ্জনবর্ণও হয়

  • "Q" এর পরে A "u" ব্যঞ্জনবর্ণ (যেমন একটি "ভি") হয়

  • ডিপথং (এ, আউ, ইই, ইইউ, ওই এবং ইউআই) দুটি স্বর দ্বারা গঠিত তবে একটি স্বর হিসাবে গণনা করা এবং সর্বদা দীর্ঘ

  • এর এবং পরবর্তী স্বরের মধ্যে দুটি বা ততোধিক ব্যঞ্জনাযুক্ত একটি স্বর সর্বদা দীর্ঘ

  • পূর্ববর্তী নিয়মের জন্য "বি", "সি", "ডি", "জি", "পি", বা "টি" এর পরে একটি "এল" বা "আর" ব্যঞ্জনবর্ণ হিসাবে গণনা করা হয় না

  • "x" দুটি ব্যঞ্জনা হিসাবে গণনা করা হয়

  • "সিএইচ", "পিএইচ", "ম", এবং "কো" একটি ব্যঞ্জনবর্ণ হিসাবে গণনা করুন

  • একটি শব্দের শেষে (উচ্চারণের পরে) সংক্ষিপ্ত "কুই" সর্বদা সংক্ষিপ্ত থাকে

  • পূর্বের কোনও নিয়মের দ্বারা স্বরকে বাধ্য না করা হলে তা দীর্ঘ বা সংক্ষিপ্ত হতে পারে এটি মিটারের উপর নির্ভর করবে

আপনার কাজটি লাতিনের একটি লাইন নেওয়া এবং এটির স্ক্যানশন তৈরি করা হবে। আপনি স্ট্যান্ডিং হিসাবে স্ট্যান্ডার্ড হিসাবে স্ট্যান্ডার্ড ইনপুট এবং আউটপুট একটি স্ট্রিং চূড়ান্ত স্ক্যান প্রতিনিধিত্ব করবে।

ইনপুটটিতে কেবল ফাঁকা স্থান এবং অক্ষর AZ থাকবে।

স্ক্যানের প্রতিনিধিত্ব করতে আপনি |পায়ে পৃথকীকরণের সিলেক্ট করে সমস্ত অক্ষরের আউটপুট পাবেন । একটি দীর্ঘ অক্ষরটি -কিছুক্ষণের দ্বারা উপস্থাপিত হবে একটি সংক্ষিপ্ত vবর্ণচিহ্নটি একটি দ্বারা চিহ্নিত করা হবে এবং একটি এনসেসস (প্রতিটি লাইনের সর্বশেষ শব্দের) দ্বারা চিহ্নিত করা হবে x। একাধিক সমাধান হিসাবে যদি প্রায়শই হয় আপনি তাদের যে কেউ আউটপুট করতে পারেন।

পরীক্ষার কেস

ভার্জিলের এনিডের শুরু।

 ARMA VIRUMQUE CANO TROIAE QUI PRIMUS AB ORIS     -> -vv|-vv|--|--|-vv|-x (or -vv|-vv|--|-vv|--|-x)
 ITALIAM FATO PROFUGUS LAVINIAQUE VENIT           -> -vv|--|-vv|-vv|-vv|-x
 LITORA MULTUM ILLE ET TERRIS IACTATUS ET ALTO    -> -vv|--|--|--|-vv|-x
 VI SUPERUM SAEVAE MEMOREM IUNONIS OB IRAM        -> -vv|--|-vv|--|-vv|-x (or -vv|--|-vv|-vv|--|-x)
 MULTA QUOQUE ET BELLO PASSUS DUM CONDERET URBEM  -> -vv|--|--|--|-vv|-x
 INFERRETQUE DEOS LATIO GENUS UNDE LATINUM        -> --|-vv|-vv|-vv|-vv|-x
 ALBANIQUE PATRES ATQUE ALTAE MOENIA ROMAE        -> --|-vv|--|--|-vv|-x

আরও শর্তাবলী

লাতিন কবিতার যথাযথ ফ্যাশনগুলিতে সমস্ত উত্তরগুলি মিউসিকে অনুরোধের সাথে শুরু করা উচিত ।

লাতিনের কেবলমাত্র দুটি অক্ষরের শব্দ "ই" এবং "ক" রয়েছে। আপনি ধরে নিতে পারেন যে অন্য কোনও একটি বর্ণের শব্দ ইনপুট হিসাবে উপস্থিত হবে না।


2
ওহ god
শ্বর

1
একটি "আমি" আরেকটি স্বরকে এগিয়ে নিয়ে যাওয়া হ'ল ব্যঞ্জনবর্ণ (যেমন একটি "জ")। ইন Lavinjaque ( --vv) তা না হয়, কিন্তু ইতালি ( -vv-) একই আয়াতে এটা নয়। ইনপুট মধ্যে জেএস লাগাতে পারে? এই আউটপুটটি উত্পন্ন করার জন্য আপনার কাছে কি আসলে একটি কার্যক্ষম সমাধান রয়েছে?
লিন

ওহ, পেনাল্টিমেট ফুট সর্বদা ক্লাসিকভাবে ড্যাকটাইল হয়। উত্তরগুলি ধরে নিতে পারে কিনা তা আপনার নির্দিষ্ট করা উচিত।
লিন

@ লিন যেহেতু পেনাল্টিমেট ফুট সর্বদা ড্যাকটাইল না তাই আমি ইচ্ছাকৃতভাবে এটিকে অস্পষ্ট রেখেছি। তাও হতে পারে।
অ্যাডহক গার্ফ হান্টার

@ ডেভ 1) হ্যাঁ আপনি ঠিক বলেছেন 2) এটি অবশ্যই পুরো শব্দটি শেষ করবে। আমি শীঘ্রই এগুলি ঠিক করব
অ্যাডহক গার্ফ হান্টার

উত্তর:


5

সেড, 402 392 374 359 363 334 333 বাইট

“দেবী, গাও, পেলিয়াসের পুত্র অ্যাকিলিয়াসের ক্রোধ এবং এর ধ্বংসযজ্ঞ, যা আখিয়ানদের উপরে হাজার গুণ বেদনা ফেলেছিল, তাদের ভিড়কে হেডিসের শক্তিশালী নায়কদের বাড়ীতে নিয়ে গিয়েছিল, কিন্তু তাদের দেহকে কুকুরের ভঙ্গুর ভোজ হিসাবে উপহার দিয়েছিল, সমস্ত পাখির মধ্যে এবং জিউসের ইচ্ছা সেই সময় থেকেই সম্পন্ন হয়েছিল যখন প্রথম সেখানে লড়াইয়ের বিভক্ত হয়েছিলেন আট্রিয়াসের ছেলে পুরুষদের কর্তা এবং উজ্জ্বল অ্যাকিলিয়াস। "

- হোমার (ইলিয়াড); বিভ্রান্ত কেন এই উদ্ধৃতি এখানে? নিয়ম পরীক্ষা করুন।

sed -E 's/[AEIOU]M? H?([AEIOU])/\1/g;s/X/cc/g;s/(^|[ AEIOU])I([AEIOU])/\1c\2/g;s/QUE( |$)/cv/g;s/A[EU]|E[IU]|OE|UI/-/g;s/[CPT]H|[BCDGPT][LR]|QU|[^-vAEIOU ]/c/g;s/ //g;s/ucc+/-/g;s/c//g;s/^[-u]([-u]|[vu]{2})[-u]([-u]|[vu]{2})[-u]([-u]|[vu]{2})[-u]([-u]|[vu]{2})[-u]([-u]|[vu]{2})[-u].$/-\1|-\2|-\3|-\4|-\5|-x/;s/[uv]/-/g;s/---/-vv/g'

ঠিক গল্ফড নয়, তবে এটি নিয়মিত প্রকাশের আকারে প্রদত্ত সমস্ত বিধি প্রয়োগ করে, যা সমাধানে পৌঁছানোর জন্য কেবল একের পর এক চালায়। এটি প্রতিটি লাইন স্বাধীনভাবে পরিচালনা করে, তাই সম্পূর্ণ মাল্টি-লাইন ইনপুট প্রক্রিয়া করতে পারে।

ব্যবহার:

printf 'ARMA VIRUMQUE CANO TROIAE QUI PRIMUS AB ORIS
ITALIAM FATO PROFUGUS LAVINIAQUE VENIT
LITORA MULTUM ILLE ET TERRIS IACTATUS ET ALTO
VI SUPERUM SAEVAE MEMOREM IUNONIS OB IRAM
MULTA QUOQUE ET BELLO PASSUS DUM CONDERET URBEM
INFERRETQUE DEOS LATIO GENUS UNDE LATINUM
ALBANIQUE PATRES ATQUE ALTAE MOENIA ROMAE' | sed -E '<...>';

ভাঙ্গন:

sed -E "
# Apply Elision
 s/[AEIOU]M? H?([AEIOU])/\1/g;

# Convert into vowels (u, v or -) and consonants (c) according to the rules given
 s/X/cc/g;
 s/(^|[ AEIOU])I([AEIOU])/\1c\2/g;
 s/QUE( |\$)/cv/g;
 s/A[EU]|E[IU]|OE|UI/-/g;
 s/[CPT]H|[BCDGPT][LR]|QU|[^-vAEIOU ]/c/g;
 s/[A-Z]/u/g; # all remaining vowels are unknown

# Remove all spaces
 s/ //g;

# A vowel followed by 2 consonants before the next vowel is long
# (and we don't care if the last vowel is long or short)
 s/ucc+/-/g;

# Remove all consonants
 s/c//g;

# Look for a matching dactylic hexameter and insert pipe separators
 s/^\
[-u]([-u]|[vu]{2})\
[-u]([-u]|[vu]{2})\
[-u]([-u]|[vu]{2})\
[-u]([-u]|[vu]{2})\
[-u]([-u]|[vu]{2})\
[-u].\$/-\1|-\2|-\3|-\4|-\5|-x/;

# Substitute identified feet with the necessary long/short vowels
 s/[uv]/-/g;
 s/---/-vv/g
"

পরীক্ষার ক্ষেত্রে ফলাফল:

-vv|-vv|--|--|-vv|-x
-vv|-vv|--|-vv|-vv|-x
-vv|--|--|--|-vv|-x
-vv|--|-vv|-vv|--|-x
-vv|--|--|--|-vv|-x
--|-vv|-vv|-vv|-vv|-x
--|-vv|--|--|-vv|-x

পরীক্ষার কেস 2 এবং 3 এর জন্য আমি পৃথক ফলাফল পেয়েছি তা উল্লেখযোগ্য নয়, যা প্রশ্নের মধ্যে অন্তর্ভুক্ত নয় এমন বিকল্প সমাধান বলে মনে হয়। এমন কি হতে পারে যদিও আমি কোনও নিয়মের ভুল ব্যাখ্যা করেছিলাম।
ডেভ

আমি মনে করি না পরীক্ষার কেস 2 এর জন্য আপনার স্ক্যানশন কাজ করে। "PROFUGUS" এ শেষ "ইউ" অবশ্যই দীর্ঘ হতে হবে কারণ পরের স্বরবর্ণের আগে দুটি ব্যঞ্জনবর্ণ ("এস" এবং "এল") থাকে। আপনার স্ক্যানেশন আপনি এটি সংক্ষিপ্ত। আমি এখন তৃতীয়টি পরীক্ষা করছি। যাইহোক সুন্দর উত্তর :)
অ্যাডহক গার্ফ হান্টার

@ ওয়েট উইজার্ড আহ ঠিক আছে, আমি যে নিয়মটি নিয়ে ভাবছিলাম তা জিজ্ঞাসা করা উচিত (জিজ্ঞাসা করা উচিত ছিল) - আমি এটিকে ফাঁকা বিহীন 2 ব্যঞ্জনবর্ণ হিসাবে বোঝাতে চাইছি । ঠিক করার পক্ষে যথেষ্ট সহজ। আমি শীঘ্রই একটি আপডেট পোস্ট করব।
ডেভ

দেখে মনে হচ্ছে আমারও একটি বাগ রয়েছে যেখানে এখন পরিবর্তিত vccvccvহয়ে যাবে । দেখে মনে হচ্ছে এটি এখন আপনার নমুনাগুলির সাথে একমত হয়েছে তবে কেস # 2 এখন। -??--?
ডেভ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.