من رفتم سربازی اگر محتوای منو دوست داشتید و بدردتون خورد از من حمایت مالی کنید

حل تمرین کارمند زیادی کوئرا با پایتون

حل تمرین کارمند زیادی کوئرا با پایتون
حل تمرین کارمند زیادی کوئرا با پایتون

حل تمرین کارمند زیادی کوئرا با پایتون

در این نوشته به روش حل یکی از سوالات برنامه نویسی وب‌سایت کوئرا می‌پردازیم.

 

حل تمرین کارمند زیادی کوئرا با پایتون

جو شرکت رهنما خیلی صمیمی است؛ بدین منظور در این شرکت همه، از پیر تا جوان، همدیگر را به اسم کوچک صدا می‌زنند. در پی استخدامات بی‌رویه واحد منابع انسانی، به تازگی رهنما با مشکلی اساسی تشابه اسمی مواجه شده‌ است. متاسفانه وقتی کسی در شرکت صدا می‌زند «باقر» از آن‌جایی که تعداد زیادی «باقر» در شرکت مشغول کار‌ هستند، نمی‌توان فهمید که منظورش کدام «باقر» است. بدین منظور مدیر منابع انسانی تصمیم می‌گیرد که برای هر شخص دقیقا یک کلاه‌رنگی بخرد به طوری که همه کسانی که اسم کوچک مشابهی دارند کلاهی با رنگ متفاوت دارند. با اینکار تا حدودی مشکل حل می‌شود؛ بدین صورت که از این به بعد کارکنان شرکت به جای این‌که اسم‌کوچک شخص را صدا بزنند، از ترکیب «اسم کوچک + رنگ» استفاده می‌کنند. مثلا وقتی می‌گوییم «باقر صورتی» می‌دانیم تنها یک «باقر صورتی» داریم و دیگر ابهامی وجود ندارد. حال مدیر منابع انسانی رهنما از شما خواسته تا با گرفتن نام افراد، حداقل تعداد رنگ‌های مختلف لازم را بدست آورید تا به هر فرد بتوان ترکیب «اسم کوچک + رنگ» یکتایی را متناظر کرد.

توضیحات سوال کارمند زیادی

 

ورودی

در خط اول که تعداد کارکنان شرکت رهنما است به شما داده می‌شود. در خط بعدی در هر خط دو رشته متشکل از حروف کوچک الفبای انگلیسی که طول هر یک حداکثر 15 حرف است به شما داده می‌شود که با فاصله از هم جدا شده و به ترتیب، نام و نام خانوادگی کارمند ام را نشان می‌دهند.

ورودی در تمرین کارمند زیادی

 

خروجی

در تنها خط خروجی حداقل تعداد رنگ‌های مختلف لازم را چاپ کنید.

 

مثال

ورودی نمونه 1

5
bagher bagherian
bagher naderian
nader bagherian
nader naderian
steve jobs

 

خروجی نمونه 1

2

توضیح نمونه 1: با دو رنگ مختلف می‌توان مشکل تشابه اسمی را حل کرد به این‌صورت که به دو باقر و دو نادر کلاه ناهمرنگ بدهیم.

 

ورودی نمونه 2

5
bagher bagherian
bagher borna
bagher naderian
alfred nobel
alfred hitchcock

 

خروجی نمونه 2

3

 

ورودی نمونه 3

3
freddie mercury
brian may
roger taylor

 

خروجی نمونه 3

1

 

کد پایتون سوال تمرین کارمند زیادی

names=[]

for i in range(int(input())):
    names.append(input().split()[0])

unique_names={name:names.count(name) for name in set(names)}

print(max(unique_names.values()))

 

منبع سوال: کوئرا

اگر نیاز به حل تمرین‌های دیگری از کوئرا دارید در بخش نظرات همین نوشته برای ما بنویسید.

برای امتیاز به این نوشته کلیک کنید!
[کل: 0 میانگین: 0]