শুরু কি সমান সমান হয়?


36

কাজটি

এই চ্যালেঞ্জে আপনার কাজ হ'ল একটি প্রোগ্রাম বা ফাংশন লিখুন যা একটি স্ট্রিং নেয় এবং ইনপুট স্ট্রিংয়ের প্রথম অক্ষর এবং শেষ অক্ষর সমান কিনা তার উপর ভিত্তি করে সত্যবাদী বা মিথ্যা মান আউটপুট করে।

ইনপুট

আপনি যে কোনও উপায়ে যুক্তিসঙ্গতভাবে ইনপুট নিতে পারেন। তবে, ধরে নিই যে ইনপুটটি একটি পূর্বনির্ধারিত ভেরিয়েবলের মধ্যে রয়েছে তা অনুমোদিত নয়। কোনও ফাইল, কনসোল, কমান্ড লাইন, ইনপুট ফিল্ড ইত্যাদি থেকে পড়া বা ফাংশন আর্গুমেন্ট হিসাবে ইনপুট নেওয়ার অনুমতি রয়েছে।

আউটপুট

ভেরিয়েবলের ফলাফল নির্ধারণ ব্যতীত আপনি যে কোনও যুক্তিসঙ্গত বিন্যাসে আউটপুট দিতে পারেন। কোনও ফাইল, কনসোল, কমান্ড লাইন, মডেল বাক্স, ফাংশন returnবিবৃতি ইত্যাদি লেখার অনুমতি রয়েছে।

অতিরিক্ত বিধি

  • ইনপুটটি খালি স্ট্রিংও হতে পারে, যার জন্য আপনার একটি মিথ্যা মান প্রদান করা উচিত।

  • একক-চর ইনপুট স্ট্রিংগুলির সত্যবাদী ফলাফল হওয়া উচিত।

  • আপনার প্রোগ্রামটি কেস-সংবেদনশীল হওয়া উচিত। helloHএকটি মিথ্যা মান আউটপুট করা উচিত।

  • আপনার কাছে কেবল একটি একক সত্যবাদী মান এবং একটি একক ফ্যালাসি মান থাকতে পারে। উদাহরণস্বরূপ, falseএকটি ইনপুট স্ট্রিংয়ের জন্য এবং 0অন্য ইনপুট স্ট্রিংয়ের জন্য ফলসী মান হিসাবে আউটপুটিং অনুমোদিত নয়।

  • স্ট্যান্ডার্ড লুফোলগুলি অনুমোদিত নয়।

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

Input    ->    Output

"10h01"        Truthy
"Nothing"      Falsey
"Acccca"       Falsey
"wow!"         Falsey
"wow"          Truthy
"H"            Truthy
""             Falsey

এটি , তাই বাইটের মধ্যে সংক্ষিপ্ততম কোডটি জয়ী!


ইনপুটটিতে কোন অক্ষর উপস্থিত হতে পারে? মুদ্রণযোগ্য এএসসিআইআই?
মার্টিন ইন্ডার

@ মার্টিনএন্ডার প্রিন্টেবল এএসসিআইআই। যদিও, আমি মনে করি না এটি খুব বেশি গুরুত্ব দেয়।
অর্জুন

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

নিবন্ধন করুন ভবিষ্যতে যত্ন নেবে।
অর্জুন

প্রস্তাবিত পরীক্ষার কেস:AbAb => false

উত্তর:



17

পাইথন 3 , 23 বাইট

s=input()
s[0]!=s[-1]<e

আউটপুটটি প্রস্থান কোডের মাধ্যমে হয়, সুতরাং 0 (সাফল্য) সত্য এবং 1 (ব্যর্থতা) মিথ্যা। তাহলে এই গ্রহণযোগ্য, একটি বাইট সংরক্ষণ করা যাবে।

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

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

প্রথমত, যদি গুলি একটি খালি স্ট্রিং হয় তবে s[0]একটি সূচিপত্র উত্থাপন করবে , প্রোগ্রামটি ব্যর্থ হওয়ার কারণ হবে।

খালি নয় র ক্ষেত্রে , যদি প্রথম এবং শেষ অক্ষর সমান s[0]!=s[-1]হয় তবে মিথ্যাতে মূল্যায়ন করবে , তাই প্রোগ্রামটি পরিষ্কার এবং তাত্ক্ষণিকভাবে প্রস্থান করবে।

অবশেষে, যদি অক্ষর আলাদা, s[0]!=s[-1]নির্ণয় করা হবে সত্য , যার ফলে compairson s[-1]<eসম্পাদন করা যায়। যেহেতু ই অপরিবর্তিত , তাই এটি নেমরর উত্থাপন করে ।

পাইথন 2 এর সাথে পিছনে সামঞ্জস্যতা পছন্দসই না হলে,

s[0]!=s[-1]<3

পাশাপাশি কাজ করে, যেহেতু একটি পূর্ণসংখ্যার সাথে একটি স্ট্রিং তুলনা করা টাইপআরর উত্থাপন করে ।



1
হ্যাঁ, একটি নিয়মিত ক্রিয়াকলাপ বাইটও বাঁচাতে পারে। প্রস্থান কোডের মাধ্যমে আউটপুট একটি প্রতিষ্ঠিত sensকমত্য, কোনও ফাংশনের জন্য অ-ত্রুটি / ত্রুটি যদিও তা নয়। আমি আমার উত্তরে প্রস্তাবটির সাথে লিঙ্ক করেছি।
ডেনিস

পাইথন REPL ব্যবহার সম্পর্কে কি?
OldBunny2800

আমি মনে করি না যে এটি সাহায্য করে। এটি এখনও একটি প্রস্থান কোড নয়।
ডেনিস

9

জাভাস্ক্রিপ্ট, 19 বাইট

a=>a.endsWith(a[0])

কি দারুন. এমনকি আমি জানতাম না যে endsWithস্ট্রিং অবজেক্টের একটি পদ্ধতি রয়েছে । নিস! :)
অর্জুন

কীভাবে ভুলে গেলাম endsWith()!? আমি এটি ব্যবহার করার সুযোগের অপেক্ষায় ছিলাম।
শেগি


7

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

S¬Q¤

এটি অনলাইন চেষ্টা করুন! বা সমস্ত পরীক্ষা করে দেখুন

S    # Split the input into individual characters
 ¬   # Get the first character
  Q  # Check all characters for equality to the first
   ¤ # Get the last value i.e. head == tail

1
ÂâćüQআরও বিভ্রান্তিকর হতে এবং একটি বাইট পেতে!
ম্যাজিক অক্টোপাস উরন

ćsθQঅন্য 4 বাইটার।
ম্যাজিক অক্টোপাস উরান


7

সি ++, 39 বাইট

[](auto s){return s[0]&&s[0]==s.back();}

সম্পূর্ণ প্রোগ্রাম:

#include <string>
#include <iostream>

using namespace std;

int main()
{
    string t = "";
    auto f = [](auto s){return s[0]&&s[0]==s.back();};
    cout << f(t);
}

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


1
আমি সি ++ (আমি সাধারণত সি ব্যবহার করি) এর মধ্যে সেরা নই, তবে আপনি প্রতি দুটি করে বাইট সংরক্ষণ s[0]করার উদাহরণ পরিবর্তন করতে *sপারেন?
এমডি এক্সএফ

1
@ এমডিএক্সএফ, এটি কেবল সি টাইপের অ্যারেগুলির সাথে কাজ করবে।
জোহান ডু টোইট

6

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

h~t?

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

ব্যাখ্যা

h       The head of the Input...
 ~t?    ...is the tail of the Input

1
ইনপুটটির জন্য আমার এই বাঁধা পরিবর্তনগুলি বাস্তবায়নের জন্য সত্যই দরকার; তার মানে আমরা এই দুটি ক্ষেত্রে এটি করতে সক্ষম হব।

6

জাভা, 81 77 বাইট

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

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

boolean f(String s){int l=s.length();return l>0&&s.charAt(l-1)==s.charAt(0);}
  • রিটার্নস trueযদি তারা সমান অন্যথায়, করছি false, falseখালি স্ট্রিং জন্য

অ্যারে সংস্করণ, 60 বাইট

boolean f(char[]s){int l=s.length;return l>0&&s[0]==s[l-1];}

ইন্টের পরিবর্তে কেন দীর্ঘ?
করভাস_192

@ করভাস_192 একটি ইউনিকোড অক্ষর 1-6 বাইট হতে পারে।
খালেদ.কে

দুটি অক্ষরের মধ্যে পার্থক্য সর্বাধিক হতে পারে Charcter.MAX_VALUE - Character.MIN_VALUE, যা 65535
করভাস_192

@ করভাস_192 আমি দেখছি, আমি এখনই এটি স্থির করেছি
খালেদ.কে।

1
@ কেভিন ক্রুজসেন সর্বশেষে s.charAt(l-1)==s.charAt(0)দুটি বাইট সংরক্ষণ করতে পারে।
জলি জোকার 15'17


5

ব্রেনফাক , 43 বাইট

+>,[<,[>[->+<<->],]]<[[-]-<]-[----->+<]>--.

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

ব্যাখ্যা

মূল লুপটি হ'ল [>[->+<<->],]। প্রতিটি পুনরাবৃত্তির পরে, বর্তমান অবস্থানের ডানদিকে ঘরটি স্ট্রিংয়ের প্রথম বাইট এবং বাম দিকে সেলটি সর্বাধিক সাম্প্রতিকভাবে পরিচালিত অক্ষর এবং প্রথমটির মধ্যে পার্থক্য। <[[-]-<]চূড়ান্ত ফলাফলকে ননজারো হলে -1 এ রূপান্তর করে এবং বাকিগুলি যথাক্রমে -1 এবং 0 থেকে 48 এবং 49 ("0" এবং "1") রূপান্তর করে।


5

হাস্কেল , 21 বাইট

cগ্রহণ করে Stringএবং ফেরত দেয় a Bool

c s=take 1s==[last s]

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

  • যদি খালি স্ট্রিংয়ের জন্য না হয় তবে এটি 16 বাইট হতে পারে c s=s!!0==last s
  • take 1sএকটি তালিকা দেয় যা খালি sনা হওয়া ব্যতীত প্রথম উপাদান s, যা ক্ষেত্রে এটি খালিও থাকে।
  • last s একটি খালি স্ট্রিংয়ে ত্রুটি ঘটবে, তবে হাস্কেলের আলস্যতা এটি সংরক্ষণ করে: একক উপাদানের সাথে একটি স্ট্রিং তার উপাদানটির মূল্যায়ন না করে খালি স্ট্রিং থেকে সর্বদা পৃথক থাকে।

5

এমএটিএল, 5 বাইট

&=PO)

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

ব্যাখ্যা

       % Implicitly grab input as a string (of length N)
&=     % Perform an element-wise equality check yielding an N x N matrix
P      % Flip this matrix up-down
O)     % Get the last value in the matrix (column-major ordering)
       % Implicitly display the result

ক্ষেত্রে, একটি খালি ইনপুট স্ট্রিং অবশ্যই পরিচালনা করতে হবে, তারপরে নিম্নলিখিত (8 বাইট) এর মতো কিছু কাজ করবে

&=POwhO)

এই দ্রষ্টব্যটি কেবলমাত্র 0এন এক্স এন ম্যাট্রিক্সের সামনের দিকে একটি প্রেন্ডেন্স করে যেমন একটি খালি ইনপুট জন্য, যখন ম্যাট্রিক্স হয় 0 x 0তখনও একটি 0মান রয়েছে যা পরে ধরা পড়ে is0)

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


খুব চালাক পদ্ধতির!
লুইস মেন্ডো

এছাড়াও 5 বাইট: 5L)d~
সান্চাইজস

2
কেবলমাত্র একটি মাথা আপ: আমার মন্তব্য বা আপনার উত্তর খালি ইনপুট হ্যান্ডেল করবে না। মন্তব্যগুলিতে এটির (আমার মতে দৃ conv় বিশ্বাসের) পক্ষে তর্ক করা হয়েছে, সুতরাং আমি এই প্রয়োজনীয়তাটি পরিবর্তনের প্রত্যাশা করি। যাইহোক, এটি দাঁড়িয়ে হিসাবে, এই এন্ট্রিটি অবৈধ।
সান্চাইজস

1
(অবশ্যই, আপনি tn?&=PO)}Fখালি ইনপুট নিয়ে কাজ করতে পারেন ; আরও কার্যকর উপায় আছে কিনা তা নিশ্চিত নন)
সানচাইসেস


4

এপিএল (ডায়ালগ) , 4 বাইট

⊃⌽=⊃

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

ব্যাখ্যা

  =                     Compare
                       The first element of the right argument with
                       The right argument reversed
                        This will return an array of the length of the reversed argument. Each element in the resulting array will be either 0 or 1 depending on whether the element at that position of the reversed argument equals the first element of the original right argument
                        So with argument 'abcda', we compare 'a' with each character in 'adcba' which results in the array 1 0 0 0 1
                       From this result, pick the first element.

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


এটি আসলেই দুর্দান্ত উত্তর, তবে আপনার ব্যাখ্যাটি সঠিক নয়। এটির জন্য (⊃⌽)=⊃বা সঠিক হবে ⊢/=⊃, তবে তাদের মধ্যে কেউই সঠিক ফলাফল দেয় না। পরিবর্তে ⌽=⊃বিপরীত স্ট্রিংটিকে তার প্রথম অক্ষরের সাথে তুলনা করে এবং তারপরে এটির প্রথম উপাদানটি বেছে নেয়। যদি স্ট্রিং খালি, এটি একটি খালি স্ট্রিং, যা একটি খালি বুলিয়ান তালিকা রয়েছে, এর মধ্যে (বাধ্য) প্রথম উপাদান দেয় করার জন্য একটি স্থান তুলনা শেষ পর্যন্ত হয় 0খালি স্ট্রিং জন্য সঠিক উত্তর -। আপনার এক্সপ্রেশনটি সমান ⊃⊃=⌽কারণ =পরিবর্তনীয়।
অ্যাডাম

@ অ্যাডাম আমার ব্যাখ্যায় ভুলটি দেখার জন্য আপনাকে ধন্যবাদ।
কৃতিমিক লিথোস

আপনাকে স্বাগতম. এখন আপনার নোটটি সঠিক নয়। ⊃⌽=⊃যেমন হয় না (⊃⌽)=⊃। এটি আরও ব্যয়বহুল, কারণ এটি প্রথম এবং শেষের পরিবর্তে সমস্ত উপাদানগুলির সাথে তুলনা করে। এছাড়াও ওপি স্ট্রিংয়ের পরিবর্তে সংখ্যা ব্যবহার করে কাজ করবে না।
অ্যাডম

The first argument reversedThe right argument reversed
অ্যাডম

এটি খালি স্ট্রিংগুলিতে কেন কাজ করে তা আপনিও ব্যাখ্যা করতে চাইতে পারেন।
অ্যাডম

4

জাভা, 52 43 বাইট

s->!s.isEmpty()&&s.endsWith(""+s.charAt(0))

এটিকে কাজ করতে, এটিকে কোনও ফাংশনে খাওয়ান যেমন নীচের অংশে একটি ল্যাম্বডাকে "যেতে" দেয়:

private static boolean f(Function<String, Boolean> func, String value) {
  return func.apply(value);
}

1
আপনি এর s.endsWith(""+s.charAt(0))পরিবর্তে 9 টি অক্ষর শেভ করতে পারেনs.charAt(0)==s.charAt(s.length()-1)
স্পেসবিসন

s->""!=s&&s.endsWith(""+s.charAt(0))
জলি জোকার

1
@ জলি জোকার যে কাজ করে না: new String()ল্যাম্বডায় খাওয়ানোর চেষ্টা করুন । এটি ব্যতিক্রম ছুঁড়ে ফেলবে। রেফারেন্স শব্দার্থবিজ্ঞান এখানে কাজ করে না।

2
@ কেভিন ক্রুজসেন খালি স্ট্রিংয়ের জন্য চারএটি (0) এর সীমা ছাড়িয়ে কোনও সূচক এড়াতে && এর সংক্ষিপ্ত সার্কিট প্রভাব
PunPun1000

4

রুবি, 26 24 বাইট

ফিলমোরির জন্য দুটি বাইট সংরক্ষণ করা হয়েছে !

->e{!!e[0]>0&&e[0]==e[-1]}

কোডগল্ফে প্রথম পোস্ট -))


1
পিপিসিজিতে আপনাকে স্বাগতম!
মার্টিন এণ্ডার

1
পিপিসিজিতে আপনাকে স্বাগতম! প্রথম প্রথম গল্ফ। ভবিষ্যতের জন্য শুভকামনা!
অর্জুন

1
আপনি খালি করে 4 বাইট সংরক্ষণ করতে e[0]&&e[0]==e[-1]পারেন, যেহেতু eখালি থাকে, e[0]শূন্য হবে। আসলে, এটি ভেবে দেখুন, এটি nilমিথ্যা নয় তবে তুলনাটি যে মিথ্যা তা একই মিথ্যা নয়; স্থির, যোগ করার পরে !!আপনি এখনও 2 টি অক্ষর সংরক্ষণ করছেন।
ফিলিওমোরি


3

সুইফট, 57 বাইট

var s=readLine()!,a=Array(s.characters);a[0]==a.last ?1:0

কোডটি সম্পাদনা করেছেন।
লীনা

পিপিসিজিতে আপনাকে স্বাগতম! a.lastপ্রয়োজনীয় স্থান পরে ?
হাইপারনিউটারিনো

হয় আমি a.last এর আশেপাশে বন্ধনী যুক্ত করতে পারি বা a.last এর পরে স্থান যুক্ত করতে পারি
লীনা

3

সি #, 38 30 বাইট

s=>s!=""&&s[0]==s[s.Length-1];

8 বাইট সংরক্ষিত হয়েছে @ রজনগুলকে ধন্যবাদ।


1
এর দৈর্ঘ্য পরীক্ষা করার পরিবর্তে sএটির সাথে তুলনা করুন ""। এছাড়াও আপনার- ?:অপারেটরের দরকার নেই। ব্যবহারের &&একই ফলাফল রয়েছে।
রাজনগুল

@ রজনগুল ভাল জায়গাগুলি ধন্যবাদ, আমি এই মুহুর্তে কাজ করে কিনা আশা করি আশা করি এটি ঘটছে! এছাড়াও &একই প্রভাব আছে না?
TheLethalCoder

@ দ্য লিলিটাল কোডার: না ঠিক &কাজ করে না। সঙ্গে &&দ্বিতীয় অভিব্যক্তি যাচাই করা হয় না যদি প্রথম অভিব্যক্তি মিথ্যা। সঙ্গে &সেকেন্ড অভিব্যক্তি সবসময় যাচাই এবং সঙ্গে ব্যর্থ হয় IndexOutOfRangeExceptionখালি স্ট্রিং পরীক্ষা মামলা।
রাজনগুল

@ রজনগুল ওহ হ্যাঁ ... মস্তিস্ক
TheLethalCoder

সম্ভবত কিছুটা দেরি হলেও আপনি যদি এর s.Last()পরিবর্তে ব্যবহার করেন তবে 5 বাইট সংরক্ষণ করতে পারবেনs[s.Length-1]
বোজন বি

3

আর, 40 বাইট

function(x)x>""&&rev(y<-charToRaw(x))==y

-২ বাইটের জন্য নাইট্রডনকে ধন্যবাদ।

-8 বাইটের জন্য মিকিটিকে ধন্যবাদ।

টেস্ট:

f=function(x)x>""&&rev(y<-charToRaw(x))==y
test <- c("10h01", "Nothing", "Acccca", "wow!", "wow", "H", "")
sapply(test, f)
all(sapply(test, f) == c(T, F, F, F, T, T, F))

আউটপুট:

> f=function(x)x>""&&rev(y<-charToRaw(x))==y
> test <- c("10h01", "Nothing", "Acccca", "wow!", "wow", "H", "")
> sapply(test, f)
  10h01 Nothing  Acccca    wow!     wow       H         
   TRUE   FALSE   FALSE   FALSE    TRUE    TRUE   FALSE 
> all(sapply(test, f) == c(T, F, F, F, T, T, F))
[1] TRUE

2
আপনি এর সাথে প্রথম বন্ধনীর এক সেট সরাতে পারেন rev(y<-el(strsplit(x,"")))==y
নাইট্রডন

1
নামবিহীন ফাংশনগুলিও গ্রহণযোগ্য, তাই আপনিf=
20-03 এ মিক্যিটি

1
এবং লেখার তুলনায় function(x)x>""&&rev(y<-charToRaw(x))==y
স্ট্রিটকে

3

> <> , 39 বাইট

 2i&01. >~&-?v1v
  i:1+?!^01. >0>n;

আমি <<> এবং কোড গল্ফ খেলতে এই উভয়ই প্রথম, তাই সহায়ক পরামর্শ প্রশংসা করা হবে।

কোডটি তিনটি মূল বিভাগে রয়েছে।

2i&01. Pushes an arbitrary number (2 in this case, this causes an empty string to print 0) onto the stack and puts the input's first character in the register.

>i:1+?!^01. Main loop. Pushes the next character onto the stack. If the string has been read completely, then go to the last section

>~&-?v1v
     >0>n;  Compare the first and last characters. Print 1 if they're the same, 0 if not

হ্যালো! পিপিসিজিতে আপনাকে স্বাগতম! চমৎকার প্রথম গল্ফ! ভবিষ্যতের জন্য শুভকামনা! :)
অর্জুন

3

গুগল শিটস, 33 বাইট

সত্যবাদী ইনপুট এবং মিথ্যা ইনপুট জন্য সেল [A1]এবং আউটপুট থেকে ইনপুট নেয় ।10

=(A1<>"")*Exact(Left(A1),Right(A1

এও যে parentheticals হয় Exact(এবং Right(বন্ধ না যেমন Google পত্রক স্বয়ংক্রিয়ভাবে তাড়াতাড়ি ব্যবহারকারীর ইনপুট সূত্র রচনা রয়েছে এই সংশোধন বাম এবং চাপা যে সেল ছেড়ে এন্টার করছে।

আউটপুট

জিএস সংস্করণ


এক্সেলের সংস্করণটি কি গুরুত্বপূর্ণ? ২০১৩ সালের আমার অনুলিপিতে, এটি ব্যর্থ হয়েছে কারণ আপনি এর &মতো ব্যবহার করতে পারবেন না । এছাড়াও, এটি A=aসত্য বলে বিবেচনা করে। আমি যে সংক্ষিপ্ততমটি পেতে পারি তা হ'ল 38 বাইট: =AND(EXACT(LEFT(A1),RIGHT(A1)),A1<>"")বা বিকল্প =IFERROR(CODE(A1)=CODE(RIGHT(A1)),1=0)
ইঞ্জিনিয়ার টোস্ট

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

1
@ ইঞ্জিনিয়ারস্টোস্ট আপনি সম্পূর্ণরূপে সঠিক, আমার বাইনারি এবং বিবৃতি ব্যবহারের *পরিবর্তে ব্যবহার করা উচিত ছিল &, তবে এটি এখনও "A"="a"বিষয়টি ছেড়ে দেয় , যা আমি পুরোপুরি উপেক্ষা করেছি। এই সমস্ত কিছু এবং বাক্য গঠন সংশোধন আমাকে =EXACT(LEFT(A1),RIGHT(A1))*(A1<>"")35 এর দিকে নিয়ে যায় , তবে আমি গুগল শিটগুলিতে ভাষাটি স্যুইচ করেছি, যা আমাকে Exactবিবৃতিতে টার্মিনালটির দ্বৈত পিতৃতান্ত্রিক ছাড়তে দেয় , =(A1<>"")*Exact(Left(A1),Right(A133 বাইটের জন্য রেন্ডার করে
টেলর স্কট

3

আর, 50 43 41 40 64

কলযোগ্য ফাংশনের জন্য 41 বাইট সহ দ্বিতীয় সমাধান - @ নিকজকি 12 এবং @ জিউস্প্পকে ধন্যবাদ - এক্স = "" এর জন্য সংশোধিত

r=function(x,y=utf8ToInt(x))ifelse(x=="","FALSE",(y==rev(y))[1])

প্রথমে 50 বাইট সহ তবে চ্যালেঞ্জের জন্য নয়

function(x){charToRaw(x)[1]==rev(charToRaw(x))[1]}

স্ট্রিং ফাঁকা থাকলে আপনি উত্পাদন করতে এর charToRawসাথে প্রতিস্থাপন করতে পারেন । utf8ToIntNA
নিকজকি 12

আপনি {}ফাংশন বডি জুড়ে কোঁকড়ানো ধনুর্বন্ধনী অপসারণ করতে পারেন ।
জিউসেপে

আমি মনে করি (y==rev(y))[1]একটি বাইট দ্বারা সংক্ষিপ্ত
জিউসেপ্পে

এই চ্যালেঞ্জটির জন্য কেবল একটি সত্যবাদী এবং একটি ফালসি মান ব্যবহার করা দরকার তবে এটি NAখালি স্ট্রিংয়ের FALSEজন্য তবে এর জন্যই উত্পাদন করে "ab"এটি অনলাইন চেষ্টা করুন!
janrjan জোহানসেন

@ আরজান জোহেনসেন আপনার মন্তব্যের জন্য ধন্যবাদ, তাই "আব" মিথ্যা দেওয়া উচিত নয়?
রিকার্ডো ক্যামন

2

অক্টাভা, 16 বাইট

@(s)s(1)==s(end)

এটি sইনপুট হিসাবে একটি স্ট্রিং নেয় এবং প্রথম s(1)উপাদানটিকে শেষের সাথে তুলনা করে s(end)

এটি @(s)s(1)-s(end)যদি অদলবদল true/falseকরা ঠিক ছিল false/true


2

জিএনইউ গ্রেপ , 12 বাইট

^(.)(.*\1)?$

প্রসারিত বা পিসিআরই মোডে চালান।

আমি জানি না এটি প্রতারণা হিসাবে বিবেচনা করা হয় কিনা।


এটি কি খালি স্ট্রিংয়ের কেসটি পরিচালনা করে?
তালি

@ কনফিউজড মিঃ_সি হ্যাঁ, খালি স্ট্রিং ⇒ কোড ১।
ইউশ 1577

2

জাভাস্ক্রিপ্ট, 20 বাইট

যোগ f=শুরুতে মত ডাকা f(arg)

_=>_[0]==_.slice(-1)

f=_=>_[0]==_.slice(-1)

i.oninput = e => o.innerHTML = f(i.value);
<input id=i><pre id=o></pre>

ব্যাখ্যা

এই ফাংশনটি একটি যুক্তিতে লাগে _। ফাংশন বডি-তে, ( তম সূচকের) _[0]==_.slice(-1)প্রথম উপাদানটি এর শেষ উপাদানটির সমান কিনা তা পরীক্ষা করে এবং উপযুক্ত বা বুলিয়ান প্রদান করে।_0truefalse



2

কমন লিস্প, 83 74 61 58 বাইট

আসল: 83 বাইট

আমি সবেমাত্র কমন লিস্প শিখতে শুরু করেছি, তাই আমার মনে হচ্ছে আমি একটি চালক পরিসরে একটি পুতুল আনছি। এখানে অবশ্যই এক ধরণের পুনরাবৃত্ত ম্যাক্রো উইজার্ডারি বা অ্যারে ম্যানিপুলেশন সম্ভব যা আমি দেখছি না।

এটি একটি বেনাম ফাংশন যা কোনও স্ট্রিংকে এর ইনপুট হিসাবে গ্রহণ করে:

(lambda (s) (let ((n (- (length s) 1))) (when (> n 0) (eq (char s 0) (char s n)))))

Prettified:

(lambda (s)
  (let ((n (- (length s) 1)))
    (when (> n 0)
      (eq (char s 0)
          (char s n)))))

একটি চটজলদি সমাধান দেখতে চাই!

সংশোধন 1: 74 বাইট

সেই স্ট্যান্ডার্ড লাইব্রেরির ফাংশনগুলিকে ভালোবাসি!

কুশ্রী:

(lambda (s) (when (> (length s) 0) (eq (elt s 0) (elt (reverse s) 0))))

সুন্দর:

(lambda (s)
  (when (> (length s) 0)
    (eq (elt s 0)
        (elt (reverse s) 0))))

সংশোধন 1.5: 61 বাইট

সাদা ব্যবধান!

(lambda(s)(when(>(length s)0)(eq(elt s 0)(elt(reverse s)0))))

রিভিশন 2: 58 বাইট

কুশ্রী:

(lambda(s)(and(>(length s)0)(not(mismatch s(reverse s)))))

সুন্দর:

(lambda (s)
  (and (> (length s) 0)
       (not (mismatch s (reverse s)))))

এখন এ পর্যন্তই! আমি মনে করি আমি ইতিমধ্যে স্মার্ট।


1
সুপারিশ ifপরিবর্তে andএবং (mismatch(reverse s)s)পরিবর্তে(mismatch s(reverse s))
ceilingcat

2

এডাব্লুকে, ২৯ 34 বাইট

এটি সম্ভবত কিছুটা প্রতারণা করছে, কারণ এটি বিকল্পটির সাথে এডাব্লুকে চাওয়া প্রয়োজন:

`-F ''`

জিএনইউ আওকে আপনি দীর্ঘ-ফর্ম প্রতিশব্দ ব্যবহার করতে পারেন:

`--field-separator=''`

সুতরাং আমি এটিতে অ্যাকাউন্টে মোট 5 টি বাইট যুক্ত করেছি।

কুশ্রী:

NR==1{a=$1}END{print(a==$NF)}

সুন্দর:

NR == 1
{
    a = $1
}

END
{
    print(a == $NF)
}

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