করপাসে ইংরেজি অনুবাদ করুন


14

করপাস জনপ্রিয় ভিডিও খেলা থেকে একটি কাল্পনিক দলাদলি হয় Warframe এমন একজন কিছুটা আকর্ষণীয় ভাষা রয়েছে।

গ্রিনারের মতো গেমের অন্যান্য বিভাগগুলির ভাষার পিছনে কিছু যুক্তি রয়েছে, কর্পস কেবলমাত্র ইংরেজি ভাষার একটি ক্ষয়ক্ষতি প্রতিস্থাপন।

নিম্নলিখিত বর্ণমালা সংক্রান্ত ম্যাপিংগুলি ব্যতীত সমস্ত কর্পাস শব্দগুলি তাদের ইংরেজি অংশগুলির মতোই:

করপাস ম্যাপিংয়ের ইংরেজি

এর ফলে উচ্চারণে কিছু সমস্যা দেখা দেয়:

yesহয়ে যায় yey
sayহয়ে yay
yayওঠে yay
sassyহয়ে yayyy
caseওঠেyaye

এখানে ম্যাপিংয়ের একটি পাঠ্য সংস্করণ রয়েছে:

a -> a
b -> t
c -> y
d -> p
e -> e
f -> t
g -> j
h -> k
i -> i
j -> t
k -> k
l -> p
m -> s
n -> t
o -> o
p -> k
q -> r
r -> t
s -> y
t -> p
u -> u
v -> t
w -> j
x -> k
y -> y
z -> b

চ্যালেঞ্জ

ইংরেজি বর্ণমালা ব্যবহার করে পাঠ্য দেওয়া হয়, এর কর্পাস অনুবাদটি আউটপুট দেয়।

উদাহরণস্বরূপ, পাঠ্যটি কর্পাসে Hello, World!পরিণত Keppo, Jotpp!হয়

নিয়ম

  • ইনপুটটিতে কেবল ASCII মুদ্রণযোগ্য অক্ষর থাকবে
  • ইনপুট পাঠ্যে সাদা স্থান এবং বিরামচিহ্ন থাকতে পারে, এগুলি অবশ্যই সংরক্ষণ করা উচিত
  • অক্ষরের মূলধন সংরক্ষণ করতে হবে
  • এটি তাই স্বাভাবিকভাবেই, খুব কম বাইট জেতে!

টেস্টকেসস

<===========>ইনপুট এবং প্রত্যাশিত আউটপুট মধ্যে ফাঁকা রেখা সহ পরীক্ষার কেসগুলি পৃথক করা হয়

Hello, World!

Keppo, Jotpp!
<===========>
Yes

Yey
<===========>
TestcaSe

PeypyaYe
<===========>
Programming Puzzles and Code Golf

Ktojtassitj Kubbpey atp Yope Jopt
<===========>
This text has a
newline in it

Pkiy pekp kay a
tejpite it ip
<===========>
Corpus language best language

Yotkuy patjuaje teyp patjuaje
<===========>
Strip the flesh! Salt the wounds!

Yptik pke tpeyk! Yapp pke joutpy!
<===========>
"Install Warframe" they said, "It'll be fun" they said

"Itypapp Jatttase" pkey yaip, "Ip'pp te tut" pkey yaip
<===========>
What the **** did you just ****ing say about me, you little *****?
I'll have you know I graduated top of my class in the Navy Seals,
and I've been involved in numerous secret raids on Al-Quaeda,
and I have over 300 confirmed kills.

Jkap pke **** pip you tuyp ****itj yay atoup se, you pipppe *****?
I'pp kate you ktoj I jtapuapep pok ot sy ypayy it pke Taty Yeapy,
atp I'te teet ittoptep it tusetouy yeytep taipy ot Ap-Ruaepa,
atp I kate otet 300 yottitsep kippy.

বোনাস

যদি আপনি টেস্টকেসের করপাসের প্রতিটি অনুবাদ উচ্চারণ করে আপনার মধ্যে একটি অডিও রেকর্ডিং (বা অডিও সহ ভিডিও) অন্তর্ভুক্ত করেন তবে আপনি 1পুরস্কার হিসাবে আপনার বাইকোয়ান্টকে বহুগুণ করতে পারেন ।


@ শেগি শিওর, এই নিয়ে ভাবা উচিত ছিল
স্কিডেদেব

4
@RobertS। এটি আপনার স্কোরকে কোনও বোনাস দেয় না ( x * 1 == x)।
স্কুলেডেভ

1
আউটপুট অক্ষরের একটি অ্যারে হতে পারে?
এলপিড্রো

"স্কিদদেব" অনুবাদসমূহ "উচ্চারণযোগ্য"; হয় রেকর্ডকৃত মানব ভয়েস হিসাবে বা প্রোগ্রামগতভাবে মেশিন লার্নিং এবং / অথবা পাঠ্য-থেকে-স্পিচ প্রযুক্তি ব্যবহার করে।
অতিথি 271314

1
আর তাই জন্ম নিয়েছিল ফিনিশ ভাষার!
সার্জিওল

উত্তর:



4

05 এ বি 1 ই , 24 বাইট

ži.•ÜÁ©;«ìñä°ÔG·ÖYΘ•Du«‡

ব্যাখ্যা:

                       ‡   transliterate
ži                         a-zA-Z with
  .•ÜÁ©;«ìñä°ÔG·ÖYΘ•       atypetjkitkpstokrtyputjkyb
                    Du«    concatenated with itself, uppercased

এটি অনলাইন চেষ্টা করুন!


মাইনর 24 বাইট বিকল্প কেবল ব্যঞ্জনবর্ণকে লিপিবদ্ধ করে
কেভিন ক্রুইজসেন

4

কাঠকয়লা , 42 বাইট

≔”$⌊∧T-¶I^F⁷ü@n⁹γ›7η”η⭆θ⎇№β↧ι§⎇№βι↧ηη⌕β↧ιι

এটি অনলাইন চেষ্টা করুন! লিঙ্কটি কোডটির ভার্জোজ সংস্করণ। ব্যাখ্যা:

≔                       Assign
 ”$⌊∧T-¶I^F⁷ü@n⁹γ›7η”  Compressed string `ATYPETJKITKPSTOKRTYPUTJKYB` 
                     η  To variable

 θ                      Input string
⭆                       Map over characters and join
  ⎇                     If
    β                   Lowercase alphabet
   №                    Contains
      ι                 Current character
     ↧                  Lowercased
                        (Then)
        ⎇               If
          β             Lowercase alphabet
         №              Contains
           ι            Current character
                        (Then)
             η          Variable
            ↧           Lowercased
                        (Else)
              η         Variable
       §                Indexed by
               ⌕        Index of
                  ι     Current character
                 ↧      Lowercased
                β       In lowercase alphabet
                        (Else)
                   ι    Current character
                        Implicitly print

4

টি-এসকিউএল, 107 বাইট

SELECT TRANSLATE(v,'bcdfghjlmnpqrstvwxzBCDFGHJLMNPQRSTVWXZ',
                   'typtjktpstkrtyptjkbTYPTJKTPSTKRTYPTJKB')FROM t

লাইন ব্রেক এবং ইনডেন্ট কেবল পঠনযোগ্যতার জন্য।

TRANSLATEচরিত্র প্রতিস্থাপনের জন্য এসকিউএল 2017 ফাংশন ব্যবহার করে ।

দুর্ভাগ্যক্রমে কেসগুলি বজায় রাখতে পুরো বর্ণমালা সেখানে (প্রায়) দু'বার রেখেছিলেন put বোধহয় ভাল উপায়, হয়তো এমন কিছু বিষয় যা হ্যান্ডলগুলি হয় T 'দল হিসেবে গুলি, কিন্তু এই আমার জন্য কাজ করেন।

ইনপুট পূর্ব বিদ্যমান টেবিল মারফত টি varchar কলাম সহ বনাম , আমাদের আই নিয়ম অনুযায়ী

এক্ষেত্রে কেস-সংবেদনশীল সার্ভারে চালনা করে বা কীওয়ার্ডটি ব্যবহার করে (অক্ষরের সামগ্রীর সাথে গণনা করা হয় না) কেস-সংবেদনশীল কোলেশন ব্যবহার করে টেবিলটি তৈরি করতে হবে COLLATE:

CREATE TABLE t(v varchar(999) COLLATE Latin1_General_CS_AS)

3

জাভাস্ক্রিপ্ট (নোড.জেএস) , 100 বাইট

s=>s.replace(/[a-z]/gi,c=>(C='_atypetjkitkpstokrtyputjkyb'[Buffer(c)[0]&31],c>{}?C:C.toUpperCase()))

এটি অনলাইন চেষ্টা করুন!

s =>                                  // s = input string
  s.replace(                          // replace in s ...
    /[a-z]/gi,                        // ... all letters, no matter the case
    c => (                            // for each letter c:
      C =                             //   pick a replacement letter C
        '_atypetjkitkpstokrtyputjkyb' //   from a 1-indexed lookup string
        [Buffer(c)[0] & 31],          //   using the 5 lowest bits of the ASCII code of c
      c > {} ?                        //   if the original letter was in lower case:
        C                             //     use the replacement letter as-is
      :                               //   else:
        C.toUpperCase()               //     convert it to upper case
    )                                 // 
  )                                   // end of replace()

3

আর , 79 বাইট

function(x)chartr("b-zB-Z",paste0(y<-"typetjkitkpstokrtyputjkyb",toupper(y)),x)

এটি অনলাইন চেষ্টা করুন!

আক্ষরিকভাবে নিম্ন এবং বড় হাতের প্রতিস্থাপনের দুটি স্ট্রিং একসাথে টাইপ করার চেয়ে কম 3 বাইট কম

আর , 79 বাইট

function(x,`[`=chartr)"B-Z"[toupper(y),"b-z"[y<-"typetjkitkpstokrtyputjkyb",x]]

এটি অনলাইন চেষ্টা করুন!

ফ্যানসিয়ার কোড, একই বাইট গণনা।




2

জে , 78 61 বাইট

-17 বাইট ধন্যবাদ ফ্রাউনফ্রোগের জন্য!

rplc(u:,98 66+/i.25);"0(,toupper)@'typetjkitkpstokrtyputjkyb'

এটি অনলাইন চেষ্টা করুন!



টুইটারে আমার J804 এ আমি ডানদিকের ধ্রুবকগুলি ব্যবহার করতে পারি না। আমার আপগ্রেড করা দরকার :) তবুও আমার সমাধানটি কুৎসিত ....
গ্যালেন ইভানভ

2

সি # (ভিজ্যুয়াল সি # ইন্টারেক্টিভ সংকলক) , 151 83 বাইট

n=>n.Select(a=>char.IsLetter(a)?(char)(" ATYPETJKITKPSTOKRTYPUTJKYB"[a%32]|a&32):a)

এটি অনলাইন চেষ্টা করুন!

পুরোপুরি 68 বাইট সংরক্ষণ করা হয়েছে Pietu1998 এর জন্য ধন্যবাদ!


রেঞ্জটি সরিয়ে, এসগুলিকে একত্রিত করে এবং কেসিংয়ের জন্য বিটওয়াইজ অপারেটরগুলি ব্যবহার করে আপনি এটি 83 বাইটে নামিয়ে আনতে পারেন Select
পুর্কাকুডারী

ধন্যবাদ! বিট বুদ্ধিমান অপারেটরদের সাথে দুর্দান্ত কৌশল!
অজ্ঞতার

2

কে (এনএনজি / কে) , 87 63 61 60 59 বাইট

f:{`c$x-a-@[!128;98+!25;:;0+"typetjkitkpstokrtyputjkyb"]a:_x}

এটি অনলাইন চেষ্টা করুন!

{ } যুক্তি দিয়ে ফাংশন x

_ ছোট হাত থেকে

a: ধার্য a

!128 ক্রমতালিকা 0 1 2 ... 127

@[!128; সূচকগুলির ;:; মানগুলি সূচকগুলিতে প্রদত্ত মানগুলির সাথে সূচকগুলিকে] প্রতিস্থাপন করে এটি সংশোধন করে

98+!25তালিকার জন্য 98 99 100 ... 122যা আসকি কোডগুলি "bcd...z"

juxtaposition সূচক হয়, সুতরাং আমরা aসংশোধিত তালিকায় সূচক হিসাবে (অন্তর্নিহিত রূপান্তরিত) ব্যবহার করি

x-a-থেকে বিয়োগ করুন a, তারপরে বিয়োগ করুনx ; এটি মূল স্ট্রিংয়ের মতো উপরের / ছোট হাতের অংশগুলি পুনরুদ্ধার করে

`c$ অক্ষর রূপান্তর


1

রেটিনা 0.8.2 , 59 বাইট

[a-z]
 $&
T`l`L
T`L`ATYP\ETJKITKPST\OKRTYPUTJKYB
T`L `l_` .

এটি অনলাইন চেষ্টা করুন! লিঙ্কে পরীক্ষার কেস অন্তর্ভুক্ত রয়েছে। ব্যাখ্যা:

[a-z]
 $&

প্রতিটি বর্ণের একটি অ-এসসিআইআই অক্ষর উপসর্গ করুন। (আমি একটি বিরতিহীন স্থান ব্যবহার করার চেষ্টা করেছি তবে ফায়ারফক্স কপি এবং পেস্ট করার পরে এটি আবার কোনও নিয়মিত জায়গায় বদলেছে।)

T`l`L

সমস্ত অক্ষরের বড় হাতের অক্ষর।

T`L`ATYP\ETJKITKPST\OKRTYPUTJKYB

চিঠিগুলি কর্পাসে রূপান্তর করুন।

T`L `l_` .

নন-এএসসিআইআই অক্ষরের পরে অক্ষরগুলি ছোট করুন এবং নন-এএসসিআইআই অক্ষর মুছুন।

ন্যাভ দ্রবণটি 63 বাইট:

T`lL`aty\petjkitk\pst\okrty\putjkybATYP\ETJKITKPST\OKRTYPUTJKYB

এটি অনলাইন চেষ্টা করুন! লিঙ্কে পরীক্ষার কেস অন্তর্ভুক্ত রয়েছে।


1

পাইথন 2 , 115 বাইট

lambda i:i.translate(''.join(a))
a=map(chr,range(256))
b='typetjkitkpstokrtyputjkyb'
a[66:91]=b.upper();a[98:123]=b

এটি অনলাইন চেষ্টা করুন!

@ এলপিড্রোর উত্তর থেকে অভিযোজিত। এটি অ্যারেতে প্রতিটি আসকি চরিত্রের প্রতিস্থাপন তৈরি করে aএবং তারপরে ব্যবহার করেstr.translate

চরের অ্যারে ফিরিয়ে নেওয়া যদি গ্রহণযোগ্য হয় তবে 113 বাইটে আনা যেতে পারে :

lambda i:[a[ord(x)]for x in i]
a=map(chr,range(256))
b='typetjkitkpstokrtyputjkyb'
a[66:91]=b.upper();a[98:123]=b

এটি অনলাইন চেষ্টা করুন!


এটি কীভাবে করছে তা নিয়ে কাজ করার জন্য রাতের এই সময়টিতে কিছুটা চিন্তাভাবনা করেছিলেন। এটি একটি দীর্ঘ দিন ছিল! সুন্দর সমাধান।
এলপেড্রো

1

জেলি , 29 বাইট

“qḍỊYl4ḃ©ƭṄxḳ½Dy’ṃⱮØA,Øa¤⁺żẎy

এটি অনলাইন চেষ্টা করুন!


কেবল ব্যঞ্জনবিন্যাসের মানচিত্র তৈরি করতে হবে, সুতরাং “ØṖ¦Mṗẏʋ@¥;}/’ṃⱮØCŒH¤⁺żẎy৪ টি সাশ্রয় হয় ( ØYমানচিত্রের ডানদিকে রয়েছে বলে 'y' থেকে মুক্তি পাওয়া যায় না )
জোনাথন অ্যালান

1

জাপট , 37 বাইট

;®i`…ypetjkŠkp¡okrtyp©jkyb`pu)gCpu bZ

এটি অনলাইন চেষ্টা করুন!

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

ব্যাখ্যা:

;                                        #Set C to the lowercase alphabet
 ®                                       #For each character Z of the input:
                                   bZ    # Find its index in:
                               C         #  The lowercase alphabet
                                pu       #  Plus the uppercase alphabet
                                         #  (-1 if it is not a letter)
                              g          # And get the character at that index in:
   `…ypetjkŠkp¡okrtyp©jkyb`              #  Get the lowercase Corpus alphabet
                           pu)           #  Plus the uppercase Corpus alphabet
  i                                      #  Add Z at the end (index -1)

0

পাইথন 2 , 138 132 বাইট

def f(i,a='bcdfghjlmnpqrstvwxz',b='typtjktpstkrtyptjkb'):a+=a.upper();b+=b.upper();return''.join((x,b[a.find(x)])[x in a]for x in i)

এটি অনলাইন চেষ্টা করুন!

লাম্বদার চেয়ে নামযুক্ত ফাংশন সহ আসলে খাটো!

ল্যাম্বদা সংস্করণ, 138 বাইট

lambda i,a='bcdfghjlmnpqrstvwxzBCDFGHJLMNPQRSTVWXZ',b='typtjktpstkrtyptjkbTYPTJKTPSTKRTYPTJKB':''.join((x,b[a.find(x)])[x in a]for x in i)

এটি অনলাইন চেষ্টা করুন!

131 125 যদি আমাদের একটি অক্ষরের অ্যারে ফেরত দেওয়ার অনুমতি দেওয়া হয় এবংjoinফাংশনটির বাইরে থাকে।

def f(i,a='bcdfghjlmnpqrstvwxz',b='typtjktpstkrtyptjkb'):a+=a.upper();b+=b.upper();return[(x,b[a.find(x)])[x in a]for x in i]

এটি অনলাইন চেষ্টা করুন!


1
আপনি যদি তৈরি করেন aএবং এখনও ল্যাম্বদা ব্যবহার করতে পারেনb গ্লোবাল ভেরিয়েবল
ব্ল্যাক আউল কাই

@ ব্ল্যাকওলকাই - ধন্যবাদ এই ধারণাটি নিয়ে খেলছি তবে দেরি হচ্ছে। হয়তো আগামীকাল :)
এলপেড্রো

এটিকে 120/113 টি অক্ষরে নামিয়ে আনা হয়েছে ( টেস্টকেসগুলি ব্যতীত টিআইও, অন্যথায় লিঙ্কটি কোনও মন্তব্যের জন্য খুব দীর্ঘ হবে)
ব্ল্যাক আউল কাই

আমার নিজের এবং আপনার নিজের উত্তর হিসাবে পোস্ট করার পক্ষে যথেষ্ট আলাদা ts আমি উজ্জীবিত করব :)
উজ্জীবিত

আমার পরীক্ষার কেসগুলিও নির্দ্বিধায় চুরি করুন। কোডের চেয়ে টাইপ করতে তারা বেশি সময় নিয়েছিল ...
এলপেড্রো

0

পিএইচপি , 100 বাইট

কোড

<?=strtr($argv[0],($u=bcdfghjklmnpqrstvwxyz).($f=strtoupper)($u),($v=typtjktkpstkrtyptjkyb).$f($v));

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

# using the provided character mapping given on the question, as an array
strtr($argv[0],                                  # strtr for the string replacement
($u=bcdfghjklmnpqrstvwxyz).($f=strtoupper)($u),  # Taking onthe the keys for the first string
($v=typtjktkpstkrtyptjkyb).$f($v));              # Using the values for second string
 # In both Strings appending the upper version of each string.

0

পাইথ, 35 বাইট

XQ.*m+r1dd[tG."byàHuH¯¹e?rJyfh

চেষ্টা করে দেখুন!

দুটি ডি থেকে পরিত্রাণ পেতে বাম মানচিত্র বা অন্য কিছু ব্যবহার করতে পারে তবে কীভাবে তা বুঝতে পারি না।



0

পাইথ, 34 টি অক্ষর

জে "byàHuH¯¹e? RJyfh" XXztGJrtG1rJ1

এটি অনলাইন চেষ্টা করুন!

স্ট্রিংটি "typetjkitkpstokrtyputjkyb" এর সংকীর্ণ সংস্করণ । কোনও কারণে পাইথকে "atypetjkitkpstokrtyputjkyb" সংকোচন করতে পারি না ফাংশন দিয়ে

+++ \। এন ++, hSzeSzCi-RChSzCMz-hCeSzChSzN
যদিও এটি সম্ভবত দু'টি বাইটকে বাদ দিতে পারে কারণ একটি বা দুটি বাইট সংরক্ষণ করতে পারে।



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