এটা কি পেংরাম?


42

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

চিঠিগুলির ক্ষেত্রে উপেক্ষা করা উচিত; যদি স্ট্রিংটি হয় abcdefghijklmnopqrstuvwXYZ, তবে ফাংশনটির পরেও সত্যবাদী মানটি ফিরিয়ে দেওয়া উচিত। নোট করুন যে স্ট্রিংটিতে এতে অন্য কোনও অক্ষর থাকতে পারে, তাই 123abcdefghijklm NOPQRSTUVWXYZ321সত্যবাদী মানটি ফিরে আসবে। একটি খালি ইনপুট একটি মিথ্যা মান প্রদান করা উচিত।


পরীক্ষার মামলা

AbCdEfGhIjKlMnOpQrStUvWxYz

==> True


ACEGIKMOQSUWY
BDFHJLNPRTVXZ

==> True


public static void main(String[] args)

==> False


The quick brown fox jumped over the lazy dogs. BOING BOING BOING

==> True

এটি কোড গল্ফ। স্ট্যান্ডার্ড বিধি প্রয়োগ। বাইটস মধ্যে সংক্ষিপ্ত কোড।


3
প্লাস পয়েন্টগুলি যদি আপনার কোডটি ইনপুটটি পুনগ্রামের মতো কিনা তা পরীক্ষা করতে পারে।
টিমমিআরএস

4
প্রশ্নের নাম অনুরোধ: দ্রুত ব্রাউন শেয়ালটি অলস কুকুরটির উপরে ঝাঁপিয়ে পড়েছিল?

উত্তর:


25

পাইথ, 7 বাইট

L!-Grb0

ব্যাখ্যা:

L             lambda (implicit b:)
    rb0       Convert b to lowercase
   G          Lowercase alphabet, "abcd...z"
  -           Set difference, all elts of first that aren't in second
 !            Logical NOT (The empty string is falsey)

পুরো প্রোগ্রাম, একক লাইন সংস্করণ ব্যবহার করে দেখুন এখানে


আমি মনে করি ইনপুটে নতুন লাইন জন্য এই সমাধানের জন্য সবচেয়ে কম পথ একটি ফাংশন করা: L!-Grb0!-Grs.z0এছাড়াও কাজ করবে কিন্তু দীর্ঘ।
FryAmTheEggman 16

ওহ, আমি স্ট্রিংটিতে include n অন্তর্ভুক্ত করতে প্রশ্নটি আপডেট হয়নি see ধন্যবাদ।
lirtosiast


@ মাল্টেসেন যদিও কোটগুলি দ্বারা ইনপুট থেকে স্ট্রিংগুলি সীমিত করার অনুমতি দেওয়ার বিষয়ে (দুর্বল) usক্যমত্য রয়েছে , আমি এটি সম্পর্কে নিশ্চিত নই কারণ পাইথনের স্ট্রিং সিনট্যাক্সের প্রয়োজনীয়তা আরও বাড়ায়।
lirtosiast

আমি কখনও ভাবিনি যে অন্তর্নির্মিত একটি বর্ণমালা কার্যকর হবে ...
সাইয়েস

16

পার্ল 6 , 20 বাইট

'a'..'z'⊆*.lc.comb

ব্যবহার:

my &code = 'a'..'z'⊆*.lc.comb;
#  the parameter is ^ there

say code '123abcdefghijklm NOPQRSTUVWXYZ321' # True
say code '123abcdefghijklm NOPQRSTUVWXY'     # False

আমি 4 বাইট "টেক্সাস" সংস্করণ ( ) এর পরিবর্তে অপারেটরের 3 বাইট "ফরাসি" সংস্করণ ( ) U+2286 SUBSET OF OR EQUAL TOব্যবহার করেছি, (<=)যার সামনেও একটি অতিরিক্ত স্থান প্রয়োজন ছিল।


12

জিএস 2, 11 9 বাইট

☺ 6ΘàB1."

2 মিট বন্ধ করে গল্ফ করার জন্য @ মিচস্কাওয়ার্টজকে ধন্যবাদ!

উত্স কোডটি সিপি 437 এনকোডিং ব্যবহার করে। এটি অনলাইন চেষ্টা করুন!

কিভাবে এটা কাজ করে

☺              Push 32 (code point of space).
  6            Bitwise OR.
   Θ           Make a block of these two instructions and map it over the input.
               This turns uppercase letters into their lowercase counterparts.
      à        Push the lowercase alphabet.
       B1      Swap and apply set difference.
         ."    Push the logical NOT of the length of the result.

দ্রুত ব্লক m2( \xe9) 2 বাইট সংরক্ষণ করে।
মিচ শোয়ার্জ

@MitchSchwartz ওহ, তাই যে কিভাবে আপনি ঐ ব্যবহার করুন। ধন্যবাদ!
ডেনিস

11

জাভাস্ক্রিপ্ট ES6, 51 57

6 বাইট সম্পাদনা করুন thx @ user81655 সংরক্ষণ করুন

a=>new Set(a.toUpperCase().match(/[A-Z]/g)).size>25

পরীক্ষার স্নিপেট

F=a=>new Set(a.toUpperCase().match(/[A-Z]/g)).size>25

function update() {  O.innerHTML=F(I.value) }
I.value='qwertyuiopasdfghjklzxcvbnm';update()
input { width: 70% }
<input id=I oninput='update()'>
<pre id=O></pre>


কাজ করবে a.replace(/[^A-Z]|[^a-z]/g,'')নাকি a.replace(/[^A-Z]/gi,'')?
ev3 কম্যান্ডার

2
@ ev3 কম্যান্ডার নং Aএবং aঅবশ্যই একই চরিত্রের হয়ে উঠতে হবে, অন্যথায় সেটটি তাদের আলাদা রাখবে এবং আকারটি হবে> 26
edc65

আপনি যদি স্প্রেড অপারেটরটি দিয়ে ব্যবহার করেন [...a.toUpperCase().replace(/[^A-Z]/g,'')].length>25?
স্কট

@ স্কটকেয়ে স্পষ্টতই না। এটি 'এএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএএ'র সাথে চেষ্টা করুন
এডিসি 65

1
@ ব্যবহারকারী 81655 ঠিক আছে, এটি দুর্দান্ত কাজ করে। ধন্যবাদ। ঘুমানোর সময় আমার মন্তব্যগুলির উত্তর দেওয়া উচিত নয়
edc65

9

আর 50 , 46 39 বাইট

all(sapply(letters,grepl,readline(),T))

সম্পাদনা ( ) tolowerযুক্ত করে প্রয়োজনীয়তা হ্রাস করেignore.case=TRUET


আর এর সাথে খুব বেশি পরিচিত না, তবে ignore.case=TRUE (T)সেই সাথে গণনায় অন্তর্ভুক্ত করা উচিত নয় ?
Ruslan

2
@ রাস্লান এটি! এটি Tশেষ হিসাবে, আর্গুমেন্ট প্লেসমেন্টের মিলের জন্য ধন্যবাদ আসলে আর্গুমেন্টের নাম নির্দিষ্ট করার প্রয়োজন নেই (এবং Tএটির জন্য পূর্বনির্ধারিত নাম TRUE)। এখানে লিখিত কোডটি কিছু যোগ করার প্রয়োজন ছাড়াই প্রয়োজনীয় ক্রিয়া সম্পাদন করে।
প্ল্যানাপাস

9

ও, 11 বাইট

GQ_s{n-}dS=

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

দুঃখের বিষয়, ও এর মধ্যে কোনও পার্থক্য নেই: /

ব্যাখ্যা

G            Pushes the alphabet to the stack
 Q           Pushes input to the stack
  _          Converts the string to lowercase
   s         Split string into char array
    {  }d    Iterate through array
     n       Pushes current element to the stack
      -      String subtraction
         S   Pushes a blank string to the stack
          =  Equals

6

জুলিয়া, 38 বাইট

s->endof(∩('a':'z',lowercase(s)))>25

এটি সহজ - lowercaseবড় হাতের / ছোট হাতের ইস্যু নিয়ে কাজ করে, 'a':'z'সমস্ত ছোট হাতের অক্ষর ধারণ করে, ছেদ হয়, কোনও অক্ষর নয় যে অক্ষর নয় এবং এটি 'a':'z'প্রথম আসে, কেবল প্রতিটি অক্ষরের মধ্যে একটি উপস্থিত থাকে sendofফলস্বরূপ অ্যারের দৈর্ঘ্য অর্জনের সবচেয়ে সংক্ষিপ্ততম উপায় এবং যদি এটি 26 হয় তবে এটি একটি পেং্রাম (এটি 26 এর বেশি হতে পারে না এবং এর সাথে >25বাইট সংরক্ষণ করে ==26)।


6

পাইথন 2, 53 51 বাইট

f=lambda s,c=65:c>90or(chr(c)in s.upper())*f(s,c+1)

বিকল্প সমাধান:

lambda s:all(chr(c)in s.upper()for c in range(65,91))

lambda s:not set(range(65,91))-set(map(ord,s.upper()))

বিকল্প 51 হিসাবে সেটগুলিতে অপারেটর রয়েছে তা নির্দেশ করার জন্য xnorকে ধন্যবাদ <=:

lambda s:set(range(65,91))<=set(map(ord,s.upper()))

1
আমি যদি ভুল না হয়ে থাকি তবে সর্বশেষ lambda s:set(range(65,91))<=set(map(ord,s.upper()))
প্রকাশটি

পাইথন 3.5 এখানে বাইট সংরক্ষণ করতে পারেন: p=lambda s:{*range(65,91)}<={*map(ord,s.upper())}। যাইহোক, আমি কোনও lambdaনিয়োগের প্রয়োজন (আপনার প্রথম ক্ষেত্রে যেমন) দরকার নেই বা নেই (আপনার পরবর্তীকালের মতো) কোনও নিয়ম খুঁজে পাচ্ছি না । সহায়তার প্রয়োজন?
টিম পেডারিক

@ টিমপিডেরিক ল্যাম্বডা নামকরণ অপ্রয়োজনীয়, যদি না আপনার প্রথম বার্ষিক সমাধানের মতো অন্য কোথাও ফাংশনটি ব্যবহার করার প্রয়োজন হয়।
FryAmTheEggman

@ টিমপিডেরিক তা উল্লেখ করার জন্য ধন্যবাদ। আমি আমার উত্তরটির নাম পাইথনের পরিবর্তে পাইথন 2 রাখলাম। আপনি চাইলে একটি নতুন উত্তর হিসাবে পোস্ট করার জন্য আমার আশীর্বাদ রয়েছে, যা আমি নিশ্চিত না যদিও সম্প্রদায়ের নীতিগুলি দ্বারা ঠিক হবে।
মিচ শোয়ার্টজ

@ ফ্রাইআম দ্য এজিগম্যান: স্পষ্ট করার জন্য ধন্যবাদ। আমার মাঝে সেই তফাতটা ঘটেনি! আমি নিয়মের ব্যাখ্যা দিয়ে একটি মেটা পোস্টও পেয়েছি । আমার লেখা কয়েকটি জিনিস থেকে দুটি বাইট রয়েছে ...
টিম পেডারিক

5

রেটিনা , 22 বাইট

Msi`([a-z])(?!.*\1)
26

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

প্রথম লাইন কোনও অক্ষরের সাথে মেলে যা পরে আবার স্ট্রিংয়ে উপস্থিত হয় না। এটি নিশ্চিত করে যে আমরা প্রতিটি চিঠি একবারে একবারে মেলে না, যতবার তা ঘটুক না কেন। ম্যাচ মোডটি ডিফল্টভাবে স্ট্রিংকে পাওয়া মিলগুলির সংখ্যার সাথে প্রতিস্থাপন করবে। সুতরাং দ্বিতীয় পর্যায়ে আমরা 26প্রথম ইনপুটটির ফলাফলের সাথে মেলে যা সর্বোচ্চ 26 টি ম্যাচ পেয়েছে কিনা তার উপর নির্ভর করে 0বা দেবে either1



4

পাইথন 3.5, 47 বাইট

lambda s:{*map(chr,range(65,91))}<={*s.upper()}

মিচ শোয়ার্টজের উত্তর হিসাবে একই নীতি , তবে পিইপি 0448 বর্ধনগুলি *আনপ্যাকিংয়ে ব্যবহার করে পাইথন 3.5 তে প্রথম প্রবর্তিত হয়েছিল।

এই সংস্করণটি আমি মিচ পোস্টে আমার মন্তব্যে যা লিখেছি তার থেকে কিছুটা পৃথক, যাতে আমি সংখ্যাগুলি উল্টো পরিবর্তে অক্ষরে পরিণত করি। কারণ কারণ আমি সমাধানে আমার মূল প্রচেষ্টাটি কীভাবে লিখেছিলাম, এটি আবিষ্কার করার আগে যে আমি মিউচকে তার পদ্ধতির অনুলিপি না করে আউট-গল্ফ করতে পারি না। সুতরাং বিবেচনা করুন যে আমার এক মৌলিকত্ব বিচ্ছুরিত चिৌল!


4

রুবি, 41 33

->s{(?a..?z).all?{|c|s[/#{c}/i]}}

ব্যবহার

p=->s{(?a..?z).all?{|c|s[/#{c}/i]}}
p["AbCdEfGhIjKlMnOpQrStUvWxYz"] 
  #=> true
p["ACEGIKMOQSUWY
BDFHJLNPRTVXZ"]
  #=> true
p["public static void main(String[] args)"]
  #=> false
p["The quick brown fox jumped over the lazy dogs. BOING BOING BOING"]
  #=> true

আমাকে 8 বাইট সংরক্ষণ করার জন্য ভাসু আদারিকে ধন্যবাদ


2
আপনি আপনার রেইজেক্সটিকে উপেক্ষা করে 8 টি বাইট সংরক্ষণ করতে পারেন।
ভাসু আদারি

4

আর, 53 45 বাইট

all(97:122%in%utf8ToInt(tolower(readline())))

পুরানো সংস্করণ 53 বাইটে:

all(letters%in%strsplit(tolower(readline()),"")[[1]])

ব্যবহার:

> all(97:122%in%utf8ToInt(tolower(readline())))
The quick brown fox jumps over the lazy dog
[1] TRUE
> all(97:122%in%utf8ToInt(tolower(readline())))
Write a function or program that takes as its input a string and prints a truthy value if the string is a pangram and a falsey value otherwise.
[1] FALSE
> all(97:122%in%utf8ToInt(tolower(readline())))
123abcdefghijklm NOPQRSTUVWXYZ321
[1] TRUE
> all(97:122%in%utf8ToInt(tolower(readline())))
Portez ce vieux whisky au juge blond qui fume
[1] TRUE

4

ম্যাটল্যাব / অষ্টাভে , 35 33 বাইট

@(x)~nnz(setdiff(65:90,upper(x)))

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


বেনামে ফাংশনটি ইনপুটটি xপেংগ্রাম হলে লজিকাল 1 প্রদান করে, বা যদি তা না হয় তবে লজিকাল 0 দেয়।

মূলত এটি @ থমাসকওয়ার পাইথ সলিউশন হিসাবে একই পদ্ধতির ব্যবহার করে। উচ্চ বর্ণের বর্ণমালা রেঞ্জের সমস্ত অক্ষরের মধ্যে সেট পার্থক্য (65:91 ) এবং ইনপুট স্ট্রিংয়ের (সমস্ত ক্ষেত্রে উপরের ক্ষেত্রে রূপান্তরিত) । বর্ণমালার মধ্যে কিন্তু ইনপুট স্ট্রিংতে নেই এমন কোনও অক্ষর আবার ফিরে আসে setdiff। সেট পার্থক্য দ্বারা ফিরে আসা অ্যারেটি কেবল স্ট্রিংকে একটি প্যাংগ্রাম বলে মনে হয়।

লোয়ার কেসের পরিবর্তে আপার কেস ব্যবহার করা তুলনায় কয়েকটা বাইট সংরক্ষণ করে 'a':'z'কারণ ASCII মানটি ব্যাপ্তি তৈরির পরিবর্তে ব্যবহার করা যেতে পারে।


দুর্দান্ত উত্তর! খনিটি 10 ​​বাইট দীর্ঘ ছিল
লুইস মেন্ডো

4

হাস্কেল , 59 56 53 51 বাইট

p s=and[any(`elem`map toEnum[a,a+32])s|a<-[65..90]]

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

ব্যাখ্যা:

একটি ইনপুট স্ট্রিং দিন s, প্রতিটি জন্য a65 90 (জন্য ASCII কোড সীমার মধ্যে Aথেকে Z) এটি পরীক্ষা করা হয় কিনা যে কোন চরিত্র sপারেন সমান a(বড় হাতের অক্ষরে চরিত্র) বা a+32(ছোট হাতের অক্ষর), দ্বারা একটি অক্ষর রূপান্তরিত toEnum। এটি বুলিয়ানগুলির একটি তালিকা উত্পন্ন করে। andতারা সবাই থাকলে তা পরীক্ষা করে দেখুনTrue

পুরাতন রুপ:

import Data.Char
p s=and[any((==)a.toUpper)s|a<-['A'..'Z']]

প্রতিটি উচ্চ বর্ণের বর্ণমালার চিঠির জন্য, উপরের ক্ষেত্রে কিছু অক্ষর sসমান কিনা তা পরীক্ষা করে দেখুন। any(==a)sএকই হিসাবে elem a sতবে sতুলনার আগে উপাদানগুলির সংশোধন করার অনুমতি দেয় - এই ক্ষেত্রে, তাদের উপরের ক্ষেত্রে প্রচ্ছন্ন করুন।


3

জাপট , 14 বাইট

#ao#{ e@Uv fXd

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

কিভাবে এটা কাজ করে

        // Implicit: U = input string
#ao#{   // Generate a range of integers from charCode("a") to charCode("{").
e@      // Check if every item X in this range returns truthily to:
Uv fXd  //  convert U to lowercase, and put all instances of X.toCharCode() in an array.
        // This returns false if U does not contain one of the characters.
        // Implicit: output last expression


3

জাভাস্ক্রিপ্ট, 110 109 99 95 93 বাইট

a=prompt(b=0).toUpperCase();for(i=65;i++<91;)b+=!~a.indexOf(String.fromCharCode(i));alert(!b)

টমাস কোয়ার জন্য 6 টি বাইট সংরক্ষণ করা হয়েছে, এবং অংশটি 10 ​​অংশের জন্য ধন্যবাদ 3।


B = 0] এর জন্য খ = 0 কাজ করবে?
ev3 কম্যান্ডার

এই পদ্ধতির সাথে নয়। তবে আমি সেই কাজটি করতে সক্ষম হতে পারি।
সুপারজেডি ২৪

আমি জাভাস্ক্রিপ্ট জানি না, তবে আপনি কি পারবেন for(i=65;i++<91;)b+=!~a.indexOf(String.fromCharCode(i));alert(!b)?
lirtosiast

কি দারুন. এটি আমি যা করেছি তার চেয়েও ছোট।
সুপারজেডি ২৪


3

2sable , 6 5 বাইট

6 বাইট সংস্করণ:

AIl-g_

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

ব্যাখ্যা:

A        Push alphabet
 Il      Push lowercase input
   -     Remove all chars of input from alphabet
    g    Get length of the remainder
     _   Print negative bool, where length < 1 = 1 (true), length > 0 = 0 (false)

5 বাইট সংস্করণ, কারাসোকম্পিউটিং এর 05AB1E উত্তর দ্বারা অনুপ্রাণিত :

lÙ{Aå

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

ব্যাখ্যা:

l        Push lowercase input
 Ù{      Push sorted uniquified input
   A     Push alphabet
    å    Is alphabet in sorted, uniquified input?


2

টিস্ক্রিপ্ট , 12 বাইট

Sz.e»xL.I(l©

আমি চা-স্ক্রিপ্টকে হত্যা করার পর থেকে প্রথম টিস্ক্রিপ্ট পোস্ট : পি

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

Ungolfed

Sz.e(#xL.I(l))

Sz   // Lower case alphabet
.e(#   // Loop through alphabet, ensure
       // for every character, below returns true
    xL    // Input lowercased
    .I(l) // Checks if above contains current char
)

1
; -; আমার এখন খারাপ লাগছে। টিবিএইচ আমি টিস্ক্রিপ্ট সবচেয়ে পছন্দ করি।
কনর ও'ব্রায়েন

2

জাভাস্ক্রিপ্ট ES6, 124 114 113 বাইট

আমি নিশ্চিত এটি আরও গল্ফ করা যেতে পারে।

v=(Q,s=[...Array(26)].map((x,i)=>String.fromCharCode(i+97)))=>s.length-1?Q.search(RegExp(s.pop(),"i"))+1&&v(Q,s):1

একটি বেনামী ফাংশন উত্পন্ন করে।

v=(Q,s=[...Array(26)].map((x,i)=>String.fromCharCode(i+97)))=>s.length-1?Q.search(RegExp(s.pop(),"i"))+1&&v(Q,s):1

alert(v(prompt("Enter pangram:")));


@ অ্যাপসিলাররা আমার ধারণা আমি সমস্যাটি পেয়েছি। দয়া করে এটি আবার পরীক্ষা করুন (আমার ব্রাউজারটি ES6 এটিএম সমর্থন করে না)
কনর ও'ব্রায়েন

হ্যাঁ, এখন ভাল দেখাচ্ছে!
অ্যাপসিলাররা


2

ES6, 68 বাইট

s=>[..."abcdefghijklmnopqrstuvwxyz"].every(x=>RegExp(x,"i").test(s))

এই স্ট্রিংটি ভয়াবহ অপব্যয়কর দেখায়, তবে এর চেয়ে ভাল আর কোনও উপায় আমি জানি না।


হয়ত চারকোডের ব্যাপ্তি ব্যবহার করছেন?
সাইয়েস

@ কয়েস এটি আমাকে ভাবতে পেরেছিল এবং আমি বেস ৩ digit ডিজিটের ব্যাপ্তি চেষ্টা করেছি তবে এখনও পর্যন্ত এটি 70 বাইট লাগবে:s=>[...Array(x=9,26)].every(z=>RegExp((++x).toString(36),"i").test(s))
নিল

2

স্কালা, 59 48 46 বাইট

print(('a'to'z'diff(readLine.map(_|32)))==Nil)

32 | _ | 32 এর পরিবর্তে (একটি সতর্কতা দেবে তবে) আরও একটি বাইট শেভ করবে
জ্যাকব

2

বাশ, 45 42 বাইট

41 বাইট প্রোগ্রাম, প্লাস 1 কারণ এটির সাথে অবশ্যই ডাকা হবে bash -e:

for i in {a..z}
{ [ ${1//[^$i${i^}]} ]
}

আশ্চর্যজনকভাবে, আমি কোনও বাশির উত্তরটি উদ্ধৃত করলাম না! (হ্যাঁ, আমি ইনপুট দিয়ে শুরু করে পরীক্ষা করেছি-f এবং এর মতো পরীক্ষা করেছি)।

এটি এমন একটি লোকেল ধরেছে যেখানে নিম্ন বর্ণের ইংরেজি বর্ণগুলি থেকে সংযুক্ত aথাকে z। ইনপুটটি প্রোগ্রামটির প্রথম যুক্তির মাধ্যমে হয়।

এটি যেভাবে কাজ করে তা হরেক বর্ণানুক্রমিক বর্ণের জন্য $i, আমরা পরীক্ষা করি যে স্ট্রিংটি অন্য সমস্ত অক্ষর মুছে ফেলে $iতার উচ্চ-আকারের সমতুল্য কিনা ${i^}। যদি এটি খালি স্ট্রিংয়ের ফলাফল দেয় তবে ইনপুটটিতে সেই চিঠিটি ছিল না এবং আমরা 1(মিথ্যা) দিয়ে প্রস্থান করি । আমাদের যদি খালি খালি ফলাফল থাকে তবে আমরা পরীক্ষাটি পাশ করে পরবর্তী চিঠিতে চলে যাই। যদি ইনপুট স্ট্রিংটিতে প্রতিটি ইংরেজি বর্ণ থাকে তবে আমরা প্রোগ্রামের শেষ প্রান্তে পৌঁছে যাব 0(সত্য) দিয়ে।



2

প্লাটিপাড় , 14 বাইট

'a'z_,X,F(x;l!

ব্যাখ্যা (স্ট্যাক ভিজ্যুয়ালাইজার বৈশিষ্ট্য শীঘ্রই আসছে!):

               ## Implicit: push the input (as a string) to the stack
'a'z_          ## Push the range of a-z (the alphabet) to the stack
     ,X        ## Invert stack, expand input string into individual characters
       ,       ## Invert again
        F  ;   ## Fold (While stack.length > 1)
         (      ## Rotate left, moving the first letter of the input string to the top
          x     ## remove any occurences of that letter from the alphabet array
            l! ## Negate the length of the array, so if there's nothing left
               ## output true, else output false

আমার যদি হাস্যকর "বর্ণমালার সমস্ত অক্ষর ঠেলা" থাকে তবে এটি 10 ​​হবে ...

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


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