দুটি প্রথম নাম


14

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

John Smith
John Doe
Luke Ryan
Ryan Johnson
Jenna Jackson
Tom John

প্রথম নাম কলামে যে কোনও নাম দেখা যায় সম্ভাব্যরূপে প্রথম নাম। প্রথম নাম কলামে নামের সংখ্যার নাম যদি শেষ নাম কলামে সংঘটন সংখ্যার চেয়ে বেশি হয় তবে এটি অবশ্যই প্রথম নাম।

উপরের তালিকায় Johnপ্রথমবার দু'বার এবং শেষ নামগুলিতে একবার উপস্থিত হয় যাতে এটি অবশ্যই প্রথম নাম। Ryanপ্রথমটিতে একবার এবং সর্বশেষে একবারে উপস্থিত হয় তাই এটি (সম্ভবত) প্রথম নাম।

সুতরাং, Tom Johnঅবশ্যই দুটি প্রথম নাম আছে এবং Luke Ryanসম্ভবত আছে।

উপরের তালিকাটি প্রদত্ত, আপনার কোডের অনুসরণ অনুসরণ করা উচিত:

Luke Ryan has two first names
Tom John definitely has two first names

ইনপুট

উপরে উল্লিখিত হিসাবে, আপনার কোড স্পেস দ্বারা পৃথক পৃথক পুরো নামগুলির একটি তালিকা (স্ট্যান্ডার্ড ইনপুট থেকে, প্রতি লাইনে একটি) নেবে। নামগুলিতে হাইফেন বা অ্যাডোস্ট্রোফস অন্তর্ভুক্ত থাকতে পারে তবে আপনাকে কখনই প্রথম বা শেষ নাম দেওয়া হবে না যাতে ফাঁকা স্থান (যেমন না Liam De Rosa, তবে Liam De-Rosaবা Liam De'Rosaনিখরচায় খেলা game অন্য কথায়, নামগুলি মিলবে [-'A-Za-z]+

প্রতিটি পূর্ণ নাম অনন্য হবে (অর্থাত্ John Smithদু'বার প্রদর্শিত হবে না)।

আউটপুট

পুরো নামের নামগুলি (একবার প্রতি লাইনে) মুদ্রণ করুন has two first namesবা definitely has two first namesতারপরেও তারা মানদণ্ডগুলি পূরণ করেন। নামগুলি কেবল একবার মুদ্রণ করা উচিত।

যে নাম দুটি প্রথম নাম নয় তাদের মুদ্রণের দরকার নেই।

আপনার অবশ্যই কেস এবং নামের বিশেষ অক্ষর সংরক্ষণ করতে হবে।

উদাহরণ

ইনপুট

Madison Harris
Riley Hudson
Addison Hills
Riley Phillips
Scott Hill
Levi Murphy
Hudson Wright
Nathan Baker
Harper Brooks
Chloe Morris
Aubrey Miller
Hudson Lopez
Samuel Owen
Wyatt Victoria
Brooklyn Cox
Nathan Murphy
Ryan Scott

আউটপুট

Riley Hudson definitely has two first names
Ryan Scott has two first names

ইনপুট

Owen Parker
Daniel Hall
Cameron Hall
Sofia Watson
Mia Murphy
Ryan Jones
Emily Ramirez

আউটপুট

[no output]

ইনপুট

Olivia Robinson
Jacob van-Dyke
Jacob Ella
Brayden De'Rosa
Levi Brook
Brook Bella
Ella Hill
Ella Anderson
Brook-Anne van-Dyke

আউটপুট

Jacob Ella definitely has two first names
Levi Brook has two first names

নোটস এবং স্কোরিং

শুভকামনা!


না Johnsonযেমন গণনা John, অথবা এটি আলাদা?
NoOneIsEre

2
Johnsonচেয়ে আলাদা হবে John। নামগুলি অবশ্যই মিলবে।
আমেরিকার হরিণবিশেষ

1
আমরা definitely has two first namesএবং কীভাবে নির্বাচন করব has two first names? এটা সবসময় একটি হতে পারে?
রড

definitelyনামটি শেষ-নাম কলামের চেয়ে প্রথম-নাম কলামে আরও বেশি সময় উপস্থিত হলে কেবল প্রদর্শন করুন । এই ক্ষেত্রে ওভাররাইড হয়, তাই কেবল প্রদর্শন করুন definitely has two first names। উদাহরণগুলি দেখুন।
আমেরিকার হরিণবিশেষ

2
ইনপুট ফর্ম্যাটটি কতটা নমনীয়? এটি কি স্ট্রিংগুলির অ্যারে হতে পারে, প্রতি ব্যক্তি একটি? অথবা স্ট্রিংগুলির 2D অ্যারে?
লুইস মেন্ডো

উত্তর:


6

জাভা (ওপেনজেডিকে 8) , 238 222 221 220 212 বাইট

l->{for(String n:l){int k=0,j=0,q=0;for(String b=n.split(" ")[1];k<l.length;j+=l[k++].matches(b+" .*")?1:0)q+=l[k].endsWith(" "+b)?1:0;if(j>0)System.out.println(n+(j>q?" definitely":"")+" has two first names");}}

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


নিস! আপনি আপনার সূচনাটি এতে ভেঙে ফেলতে পারেন k=j=q=0। এছাড়া, এটিও যদি আপনি কোন বাইট সংরক্ষণ করা হবে কিন্তু আপনি আধুনিক প্রতিস্থাপন করতে পারে x+=y?1:0সঙ্গে if(y)x++। আমার মতো দৈর্ঘ্যের পরে আপনি যদি পঠনযোগ্যতা অনুকূল করতে চান তবে সম্ভবত এটিই যাওয়ার উপায়।
Jakob


6

পাইথন 2 , 141 137 132 130 বাইট

-২ বাইটস @ জোনাথনফ্রেচকে ধন্যবাদ

n=map(str.split,input())
for f,l in n:
 c=cmp(*[x.count(l)for x in zip(*n)])
 if~c:print f,l,'definitely '*c+'has two first names'

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


আমি মনে করি -c<1এটি হতে পারে ~c, যেমন cইতিবাচক হওয়ার মতো দেখা যায় না।
জোনাথন ফ্রেচ





2

05 এ বি 1 ই, 144 বাইট (কাজ চলছে)

|vy#Dθˆн})©gF®®NèQO¯®NèQO-D®¯NèQO¯¯NèQO-D.À>0›s>0›&i0›s0›&i®Nè" "¯Nè" defínítely has two fírst names"J,ë®Nè" "¯Nè" has two fírst names"J,}ë\\}}´

4
না এটি কাজ করে না, আমি কেবল বাইটের সংখ্যা হ্রাস করার জন্য কাজ করছি
ডেভিড স্মিথ

2

05AB1E , 53 51 বাইট

|UXv“€°‚•€ÛŒî“D„´Î ì)yð«ìõ¸ìXð¡øεy#θQO}`.S>sèˆ}¯õK»

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

ব্যাখ্যা

|                                                       # Take inputs as array
 UX                                                     # Store in X and push X to stack
   v                                          }         # For each name, do
    “€°‚•€ÛŒî“D                                         #   Push "has two first names" twice
               „´Î ì                                    #   Prepend "definitely " to one of those
                    )yð«ì                               #   Wrap both strings in an array and prepend (name + " ") to each
                         õ¸ì                            #   Prepend " " to array
                            Xð¡øεy#θQO}`                #   Get occurences in input first and last names
                                        .S>             #   0 for not first name, 1 for first name and 2 for definitely first name
                                           sèˆ          #   Get string at that index and push to global array
                                               ¯õK»     # Output global array, 1 string per line

বা 51 49 বাইট, মান I / O বিধি (ইনপুট এবং অ্যারে হিসাবে আউটপুট) ধরে

UXv“€°‚•€ÛŒî“D„´Î ì)yð«ìõ¸ìXð¡øεy#θQO}`.S>sèˆ}¯õK

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


1

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

for(;$s=$argv[++$i];$f[$a]++,$l[$n[]=$b]++)[$a,$b]=explode(" ",$s);for(;$b=$n[+$k++];)$f[$b]<$l[$b]||print$argv[$k].($f[$b]>$l[$b]?" definetly":"")." has two first names
";

পৃথক কমান্ড লাইন আর্গুমেন্ট হিসাবে নাম নেয়।

এটি দিয়ে চালান -nrবা অনলাইনে চেষ্টা করুন


0

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

n={}
c=[]
while 1:
 try:a,b=input().split();n[a]=n.get(a,0)+1;n[b]=n.get(b,0)-1;c+=[[a,b]]
 except:[print(a,b,'definitely has two first names'[(n[b]>0)*11:])for a,b in c if n[b]>=0];break


0

জাভাস্ক্রিপ্ট (ES6), 149 বাইট

s=>s.replace(/(.*) (.*)\n/g,(_,t,u)=>g(`
${u} `)>1?t+` ${u}${v>g(` ${u}
`)?` definitely`:``} has two first names
`:``,g=u=>v=`
${s}`.split(u).length)

আই / ও এর মধ্যে নতুন লাইনের পিছনে অন্তর্ভুক্ত রয়েছে। @ রবার্তোগ্রাহামের উত্তরে ব্যাপকভাবে অনুপ্রাণিত।



0

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

$n=$args
$s=" has two first names"
$f=$n|%{$_.Split()[0]}
$l=$n|%{$_.Split()[1]}
$i=0
$l|%{switch(($f-match$_).count){{$_-eq1}{$n[$i]+$s}{$_-gt1}{$n[$i]+" definitely"+$s}}$i++}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.