আইসোগ্রাম চেকার


13

চ্যালেঞ্জ:

একটি শব্দ দেওয়া হয়েছে, এটি একটি আইসগ্রাম কিনা তা পরীক্ষা করুন।


কি :

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


উদাহরণ:

"Dermatoglyphics"     ---> true
"ab"                  ---> true
"aba"                 ---> false
"moOse"               ---> false
"abc1"                ---> false
""                    ---> true

ইনপুট :

আপনি কোনও যুক্তিসঙ্গত বিন্যাসে ইনপুট গ্রহণ করতে পারেন may

ইনপুটটিতে কেবল অক্ষর এবং / অথবা সংখ্যা থাকবে, কোনও স্পেস নেই ( [a-zA-Z0-9])


আউটপুট:

  • true অথবা কোনও সত্যবাদী মান যদি ইনপুটটি আইসোগ্রাম হয়
  • false বা অন্যথায় কোনও মিথ্যা মান

এটি তাই প্রতিটি ভাষার জিতে বাইটে সংক্ষিপ্ততম কোড।


3
প্রস্তাবিত পরীক্ষার কেস:sad2
এডম

1
আইসগ্রামের আপনার সংজ্ঞায় দুটি পৃথক বিপরীত বিবৃতি রয়েছে। ইহা কোনটা?
অ্যাডহক গার্ফ হান্টার

9
আমি আপনাকে সুপারিশ করব যে আপনি স্যান্ডবক্স ব্যবহার শুরু করুন যাতে চ্যালেঞ্জ পোস্ট করার আগে এই সমস্যাগুলি ধরা যায়।
fəˈnɛtɪk

3
@ মুহাম্মাদসালমন এটি খুব নিবিড়, দয়া করে আপনার "উদ্ধৃতি" থেকে শেষ করে "কিছু" সরান এবং আরও কিছু উদাহরণ দিন ( sad2dasএমনকি এটি 2কিছু না দেখায় ব্যর্থও হবে)।
আসোন তুহিদ

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

উত্তর:


9

পাইথন 2/ 3, 36 52 48 বাইট

lambda s:len(s)==len({*s.lower()}-{*str(56**7)})

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

আমি setকেবল অনন্য উপাদান রয়েছে এই সত্যের সুবিধা গ্রহণ করি । __len__প্রত্যেকের পদ্ধতিটি চাওয়ার মাধ্যমে আমি নির্ধারণ করতে পারি যে sএটিতে কেবল অনন্য উপাদান রয়েছে (কেসকে উপেক্ষা করে) রয়েছে contains

সম্পাদনা: সংখ্যার ইনপুটগুলির জন্য মিথ্যা ফেরত দেওয়ার জন্য পূর্ব-উপেক্ষা করা প্রয়োজনীয়তা পূরণের জন্য আপডেট করা হয়েছে। সমস্ত অঙ্কের সেট হিসাবে এনকোড করা আছে set(str(56**7))

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


3
পিপিসিজিতে আপনাকে স্বাগতম! এটাও আসতে অনুমিত হয় falseযখন sএকটি অঙ্ক অক্ষর আছে।
জিউসেপ

ব্যবহার করছে `56**7`(অন্যান্য পাইথন উত্তরে হিসাবে) পরিবর্তে str()খাটো? আমি অজগরটির সাথে পরিচিত নই তবে এটি আপনার দুটি উত্তরের মধ্যে প্রধান পার্থক্য বলে মনে হচ্ছে।
জিউসেপে

@ জিউসেপ পাইথন 3 নেই ``, পাইথন 2-কেবলমাত্র একটি সংস্করণ 4 বাইট সংরক্ষণ করতে পারে (বিভাগের পরিবর্তে এটি +1 তে 3)
রড

@ রড ঠিক ঠিক। মজাদারভাবে যথেষ্ট, 56**7নীচে 0-9 অঙ্কের আপনার নিজস্ব এনকোডিং দ্বারা অনুপ্রাণিত হয়েছিল, তবে আপনার উপর 1 বাইট দ্বারা সংরক্ষণ করে।
স্কট নরটন

সম্ভবত আপনি একটি পাইথন 2 সংস্করণ যুক্ত করতে পারেন? 46 বাইট:lambda s:len(s)==len(set(s.lower())-{`56**7`})
সানি প্যাটেল


4

আর , 41 বাইট

!grepl("(.).*\\1|\\d",tolower(scan(,"")))

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

রেজেক্স পদ্ধতির !grepl(regex,scan(,""),F)কাজ করেনি তাই অনুমান করি যে ক্যাপচারিং আর-তে সংবেদনশীলতার সাথে মেলে না? আমি সাধারণভাবে রেগেক্সে খারাপ, যদিও, আমি যদি কেবল এটি ভুল করে থাকি তবে আমি অবাক হব না ...

আর , 58 বাইট

!anyDuplicated(c(el(strsplit(tolower(scan(,"")),"")),0:9))

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

0:9অক্ষরগুলি (নিম্নরূপে) তালিকায় অঙ্কগুলি সংযোজন করে যদি কোনও সদৃশ থাকে।


3

রুবি , 25 23 21 বাইট

জিউসেপিকে উভয় ধন্যবাদ -2 বাইট

->s{/(.).*\1|\d/i!~s}

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


-২ বাইট ধন্যবাদ কিরিল এলকে।

রুবি -n , 21 19 18 16 বাইট

p !/(.).*\1|\d/i

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


@ জিউস্পেপ আমি ভাবিনি যে এটি কার্যকর হবে, ধন্যবাদ
অসোন তুহিদ

1
আমার মনে হয়, দ্বিতীয় সংস্করণে আপনার এমনকি $_দরকারও নেই - কেবল অন্য কোনও কিছু ছাড়াই একটি রেজেক্সে ফেলে দেওয়া স্পষ্টভাবে এর সাথে মেলে $_: 16 বাইটস
কিরিল এল।

@KirillL। ধন্যবাদ, আমি এর !/.../আগে কখনও দেখিনি , এটি রুবি
ডক.অর্গ.অর্গও

অবাক হওয়ার মতো বিষয় নয়, কিছু পার্ল লোকের কাছ থেকে পরামর্শ পাওয়ার পরেও আমি এখানে এটি সম্পর্কে জানতে পেরেছিলাম :)
কিরিল এল।

@KirillL। অবাক হওয়ার
মতোই

3

ব্র্যাচল্যাগ , 4 বাইট

ḷo⊆Ạ

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

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



2

জাপট , 12 বাইট

;v
oC ‰ eUq

ব্যাখ্যা:

;v
;         // Set alternative default vars, where C is the lowercase alphabet
 v        // Make the implicit input lowercase and reassign it
oC ‰ eUq
oC        // Remove all items from the input that are not in the alphabet
   ‰     // Split into chars and select unique array items
      eUq // Check if the result is equal to the input split into chars

এখানে চেষ্টা করুন।




2

জাপট ২.০, 12 11 বাইট

-1 বাইট ধন্যবাদ নিতকে

v
f\l â eUq

এটি অনলাইন পরীক্ষা!


আহ, আপনি সংস্করণটি আরও দীর্ঘায়িত করলেন কেন? এছাড়াও, আমি মনে করি জাপের শেষ সংস্করণটি 1.4.4 ...
এরিক দ্য আউটগল্ফার

@ এরিকথিউটগল্ফার স্বয়ংক্রিয়ভাবে মিথ্যা প্রত্যাবর্তনের সংখ্যাগুলির জন্য আসল নয় account
অলিভার

আহ, সুতরাং আপনি একটি আলফা সংস্করণ ব্যবহার করেছেন কারণ এটি আসলে খাটো।
এরিক আউটগল্ফার

পছন্দ করুন ভেনিলা জাপটে রেজেেক্সের দাম 2 + হত। ethproductions.github.io/japt/…
অলিভার

1
@ নিট ধন্যবাদ! ভাল ব্যবহারe
অলিভার

2

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

s=>!/(.).*\1|\d/i.test(s)

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

উত্তর আপডেট করার জন্য ধন্যবাদ @BMO , @ l4m2 , @KevinCruijssen

-4 বাইটস @ কেভিন ক্রুজসেনকে ধন্যবাদ thanks


s=>!/(.).*\1|[^a-z]/i.test(s)?
l4m2

@ কেভিন ক্রুজসেন: আমি আপডেট হওয়া সংস্করণটি দেখতে পেলাম না

আমি নিশ্চিত [^a-z]যে প্রতিস্থাপন করা যাবে\d
কেভিন ক্রুইজসেন

@ কেভিন ক্রুজসেন: ধন্যবাদ আপডেট হয়েছে

2

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

Ci`(.).*\1|\d
^0

রিটার্নস 1Truthy এবং 0Falsey মান হিসাবে। আমার প্রাথমিক কোডটিতে একটি বাগ আবিষ্কার এবং ঠিক করার জন্য @ নীলকে
ধন্যবাদ জানাই

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

ব্যাখ্যা:

C             Check if the input matches part of the following regex:
 i`            Case insensitivity enabled
               Check if part of the input matches either:
  (.)           A character `C`
     .*         followed by zero or more characters
       \1       followed by the same character `C` again
         |     Or
          \d    A digit
^0             Invert Truthy/Falsey, basically replacing every 0 with a 1,
               and every other value with a 1

তোমার বিপরীতে কেন?
মুহাম্মদ সালমান

@ মুহাম্মাদসালম্যান দুটি কারণ: ম্যাচগুলি উল্টাতে আরও বেশি বাইট খরচ পড়তে হবে cost এবং আমি
রেটিনার

কারণ 1)। আহ, ঠিক আছে. কারণ 2)। এলএল
মুহাম্মদ সালমান

1

পাওয়ারশেল , 91 বাইট

param($b)($a=[char[]]$b.ToUpper()|group|sort c*)[0].Count-eq$a[-1].count-and$b-notmatch'\d'

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

নিষ্পাপ সমাধান, তবে আমি আরও ভাল অ্যালগরিদম নিয়ে আসতে পারি না। ইনপুট নেয় $b, ToUpperকেস রূপান্তর করে , charএ্যারে হিসাবে কাস্ট করে । পাইপগুলি যে অ্যারেতে Group-Objectপ্রতিটি ইনপুট চিঠির জন্য নাম / গণনা জোড়া রয়েছে এমন একটি অবজেক্ট তৈরি করে। তারপরে আমরা sortসেই cপরিমাণের উপর ভিত্তি করে এর একটাকে নিয়ে যাই 0। আমরা এটি পরীক্ষা করে .Countদেখি যে এটি শেষেরটি -eqউলের.Count[-1] জোড়া। যদি তাই হয়, তবে গণনাগুলি সমস্ত সমান, অন্যথায় আমাদের কাছে আলাদা আলাদা পরিমাণে অক্ষর রয়েছে।

আমরা তারপরে -andইনপুটটিতে কোনও সংখ্যার -notmatchবিপরীতে \dকোনও বিধি বিধান করা যায় কিনা তা যাচাই করে । সেই বুলিয়ান ফলাফলটি পাইপলাইনে রেখে গেছে এবং আউটপুট অন্তর্ভুক্ত।



1

পাইথন 2 , 57 56 বাইট

x=input().lower()
print len(set(x)-set(`763**4`))/len(x)

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

প্রথমে এটি পরে ডুপ্লিকেটগুলি সরিয়ে একটি সেটে ইনপুট পরিবর্তন করে, তারপরে অঙ্কগুলি (এনকোডড `763**4`) সরিয়ে ফেলুন , তারপরে দৈর্ঘ্যটি মূল ইনপুটটির মতো কিনা তা পরীক্ষা করুন


1

জাভা 8, 61 39 বাইট

s->!s.matches("(?i).*((.).*\\2|\\d).*")

ব্যাখ্যা:

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

s->  // Method with String parameter and boolean return-type
  !s.matches("(?i).*((.).*\\2|\\d).*")
     //  Return whether the input does not match the regex

রেজেক্স ব্যাখ্যা:

String#matchesসুস্পষ্টভাবে যোগ করে ^...$

^(?i).*((.).*\2|\d).*$
 (?i)                      Enable case insensitivity
^    .*                    Zero or more leading characters
       (       |  )        Followed by either:
        (.)                 Any character `C`
           .*               with zero or more characters in between
             \2             followed by that same character `C` again
               |           Or:
                \d          Any digit
                   .*$     Followed by zero or more trailing characters

1

এপিএল (ডায়ালগ ইউনিকোড) , 12 বাইট

অজ্ঞাতনামা

(∪≡~∘⎕D)819

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

819⌶ ছোট হাতের অক্ষর ব্যবহার

() এটিতে নিম্নলিখিত সূক্ষ্ম ফাংশন প্রয়োগ করুন:

~∘⎕Dআর্গুমেন্ট থেকে ডি আইজিটস  সরান

∪≡ যুক্তির অনন্য উপাদানগুলি কি সেইরকম?


1

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

{!(.uc~~/(.).*$0|\d/)}

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

কিছু চরিত্রের সাথে কোনও মিল নেই পরে একই চরিত্রের জন্য later কোড ব্লক হিসাবে অন্তর্নিহিত ফাংশন, imp _ এ স্পষ্টত মেলে, এর সাথে বই উল্টে !। যোগ করা হয়েছে |\d(তা অ্যাডাম) তবে এটির দরকারও ছিল .uc~~, যার জন্য প্রথম বন্ধনী প্রয়োজন ...

ব্যাগ, 23 বাইট সহ বিকল্প

{.uc.ords.Bag65..97}

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

এটির পরে কেসটি স্বাভাবিক করে একটি ব্যাগ তৈরি করে (ঘটনা গণনার সাথে সেট করে)। সাবসেট বা সমান হলেই সত্য যদি সমস্ত সদস্য তুলনা ব্যাগের সদস্য হন এবং সমস্ত ঘটনা গণনা তুলনা ব্যাগের তুলনায় কম বা সমান। সুতরাং যে কোনও পুনরাবৃত্তি বা অঙ্কগুলি তুলনাটিকে মিথ্যা করে তুলবে।


ব্যর্থ হয় abc1
অ্যাডম

আহ, সংখ্যাগুলি যুক্ত হওয়ার আগে এই উত্তরটি লিখেছিলেন।
ফিল এইচ

আপনি কি যোগ করতে পারবেন না |\d?
অ্যাডাম

@ অ্যাডম: বাছাই করুন। অনুধাবন করা হয়েছে যে চিঠিগুলির কেসগুলি আলাদা ছিল তবে এটি পুনরাবৃত্ত চিঠিগুলি সনাক্ত করতে পারে না, তাই কেসটিকে স্বাভাবিক করতে এবং পাশাপাশি প্যারেন্স যুক্ত করতে হবে।
ফিল এইচ



1

অ্যাপ্লিকেশনগুলির জন্য ভিজ্যুয়াল বেসিক (32 বিট), 102 বাইট

s=LCase(InputBox(u)):j=1:For i=1To Len(s):k=Mid(s,i,1):j=j*0^Instr(i+1,s,k)*(k Like"[a-z]"):Next:?j<>0

সত্য যে ভিবিএ ব্যবহার 0^xX শূন্য এবং অন্যথায় 0 হলে 1 ফলন হয়েছে তা ব্যবহার করুন। তাত্ক্ষণিক (ডিবাগ) উইন্ডোতে চালান।

সম্পাদনা: মন্তব্যগুলিতে টেলারের নির্দেশিত হিসাবে এটি কেবলমাত্র এমএস অফিসের 32 বিট ইনস্টলগুলিতে কাজ করে।


আপনি যদি নিজের ভাষাটি এক্সেল ভিবিএতে সীমাবদ্ধ রাখেন তবে আপনি এটিকে s=LCase([A1]):j=1:For i=1To Len(s):k=Mid(s,i,1):j=j*0^InStr(i+1,s,k)*(k Like"[a-z]"):Next:?j<>0ইনপুট নিয়ে 95 বাইটে সরিয়ে নিতে পারবেন [A1]। এছাড়াও, এটি লক্ষণীয় যে ভিবিএতে এক্সপেনশনেশনটি অদ্ভুত যে এই সমাধানটি অফিসে 32 বিট ইনস্টলের মধ্যে সীমাবদ্ধ।
টেলর স্কট

এছাড়াও, আপনি যথাযথ মূলধন (উপরে দেখুন) ব্যবহার করে এবং <!-- language-all: lang-vb -->উত্তরের বাক্য সংযোজন যুক্ত করতে আপনার উত্তরে একটি পতাকা যুক্ত করে আপনার উত্তরকে আরও ভাল এবং আরও পঠনযোগ্য করে তুলতে পারেন
টেলর স্কট

1
@ টেলরস্কট ধন্যবাদ! সংশ্লেষ হাইলাইট করা এবং ডি 32 বিটের সীমাবদ্ধতা উল্লেখ করা হয়েছে। এক্সেল ইনপুট সম্পর্কে, আমি যখনই সম্ভব সমাধানের আবেদন-আক্রমণকারী রাখব inv
dnep

1

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

lDÔQ

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

ব্যাখ্যা

l      # convert input to lowercase
 D     # duplicate and push to stack
  Ô    # uniquify the list of characters
   Q   # check for equality

যদি ইনপুটটিতে অক্ষরযুক্ত অক্ষর থাকে তবে এটি ব্যর্থ হয়।
শেগি


The input will only contain letters and/or numbers, no spaces ([a-zA-Z0-9])
লর্ডকুলাস

" একটি আইসোগ্রাম এমন একটি শব্দ যা কেবলমাত্র অনুলিপিযুক্ত অক্ষরের সমন্বয়ে থাকে " - অর্থাত, সংখ্যাযুক্ত "শব্দ" একটি মিথ্যা মান প্রদান করে return উদাহরণ হিসাবে 5 তম পরীক্ষার কেসটি দেখুন।
শেগি

আমার খারাপ। সঠিক 05AB1E কোডের জন্য @ এনিগমার উত্তর দেখুন।
লর্ডক্লাস

1

সি (জিসিসি) , 87 85 83 বাইট

  • সংরক্ষিত দুই চার বাইট ধন্যবাদ ceilingcat
f(s,p,b,P)char*s,*p;{for(b=s;*s;++s)for(p=b*=*s>64;b&&p<s;b=(*s^*p++)&95?b:0);s=b;}

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


@ সেলিংক্যাট সুন্দর পরামর্শ, ধন্যবাদ।
জোনাথন ফ্রেচ

আপনাকে ধন্যবাদ
জোনাথন ফ্রেচ 21


0

সিজেম , 11 বাইট

qelA,s+_L|=

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

ব্যাখ্যা

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

q      e# read the input:            | "MOoSE1"
el     e# convert to lowercase:      | "moose1"
A      e# push 10:                   | "moose1" 10
,      e# range [0,N):               | "moose1" [0 1 2 3 4 5 6 7 8 9]
s      e# string representation:     | "moose1" "0123456789"
+      e# concatenate:               | "moose10123456789"
_      e# duplicate:                 | "moose10123456789" "moose10123456789"
L|     e# union with the empty list: | "moose10123456789" "mose1023456789"
       e# (this gets rid of duplicates)
=      e# Equal to original:         | 0



0

পাইথ , 17 বাইট

.Am&!t/rz0d}dGrz0

পরীক্ষা স্যুট

ব্যাখ্যা:
.Am&!t/rz0d}dGrz0 # Code
  m           rz0 # Map the following over the lowercase input:
      /rz0d       #  Count occurrences of d in lowercase input
     t            #   minus 1
    !             #    inverted (0 -> True)
   &              #     and
           }dG    #      d is in the lowercase alphabet
.A                # Print whether all values are truthy
পাইথন 3 অনুবাদ:
z=input()
print(all(map(lambda d:not z.lower().count(d)-1and d in "abcdefghijklmnopqrstuvwxyz",z.lower())))

0

সি #, 82 বাইট

bool f(string s)=>!!(s.GroupBy(c=>c).Any(c=>c.Count()>1|(!Char.IsLetter(c.Key))));

সম্পাদনা করুন: চরের জন্য পরীক্ষা যোগ করা হয়েছে

সম্পাদনা: এটিকে 5 বাইট দ্বারা সংক্ষিপ্ত করতে গ্রুপবাই ব্যবহার করুন


1
পিপিসিজিতে আপনাকে স্বাগতম! আমি মনে করি আপনি যে প্রয়োজনীয়তাটি হারিয়েছেন তাও আপনাকে ইনপুটটিতে কোনও সংখ্যা নেই তাও পরীক্ষা করে দেখতে হবে।
মার্টিন ইন্ডার

0

এপিএল (ডায়ালগ ইউনিকোড) , 25 20 22 বাইট

'''(.).*\1|\d'S'&'1

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

সত্যের জন্য 1 প্রদান করে, অন্য 0

@ এইচ.পি.উইজকে 5 টি বাইট সংরক্ষণ করা হয়েছে

ফিক্সড, এবং @ অ্যাডেমের জন্য আরও একটি বাইট সংরক্ষণ করে

কিভাবে?

'''(.).*\1|\d'S'&'1  Tacit fn
                    1  Ignore case
               S'&'    Search and return the match(es)
   '(.).*\1|\d'         For this regex
''                     And compare to the empty string

ব্যর্থ হয় abc1
অ্যাডম

নয় \w.বৈধ?
অ্যাডম

আপনি যদি বলতে চান (.).*\1, না। এটির জন্যও ব্যর্থ abc1: /
জে.এস.এল্লি

আমি বুঝতে পারছি না। "এটি ব্যর্থ হয়" বলতে কী বোঝ?
অ্যাডম

আপনি যদি অনলাইনে এটিকে পরখ করে! যদি আপনি এটি জন্য ফেরৎ 1 দেখতে পারেন abc1, যখন এটি 0 ফিরে উচিত
জে Salle

0

টিসিএল , 114 বাইট

proc I w {lmap c [set L [split $w ""]] {if {[regexp -all -nocase $c $w]>1|![string is alp $c]} {return 0}}
expr 1}

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

TCL , 121 বাইট

proc I w {lmap c [set L [split $w ""]] {if {[llength [lsearch -al -noc $L $c]]>1|![string is alp $c]} {return 0}}
expr 1}

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

এখনও আমার স্বাদ জন্য দীর্ঘ!

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