هناك مصباح في غرفة ويضئ عندما يكون هناك على الاقل شخص واحد في الغرفة. لديك مواعيد دخول وخروج جميع الأشخاص جد الوقت الكلي لعمل المصباح
مثال
3
1 5
2 5
3 7
السطر الاول يحتوي على عدد الاشخاص
اي سطر يأتي بعده يحتوي على موعد دخول وخروج شخص ما
مثلا السطر الاول دخل الشخص الساعة الواحدة وخرج الساعة الخامسة
للإجابة المصباح عمل لمدة 6 ساعات من الساعة الواحدة حتى السابعة
نقاط اضافية bonus
بالإضافة للوقت الكلي جد اطول واقصر فترة عمل فيها المصباح
يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد
دخول
التعليقات
قد يعمل هذا الكود اظن
pplNumber = int(input("Entrer le nombre des personnes: "))
enters_list = list()
out_list = list()
minimum = 24
minimumTime = ""
maximum = 0
maximumTime = ""
for i in range(pplNumber):
ins = int(input("Heure d'entrer: "))
out = int(input("Heure de sortir: "))
result = out - ins
if result < minimum:
minimum = result
minimumTime = str(ins) + " - " + str(out)
if result > maximum:
maximum = result
maximumTime = str(ins) + " - " + str(out)
print("="*40)
enters_list.append(ins)
out_list.append(out)
time = max(out_list) - min(enters_list)
print("Nombre d'heure: " + str(time))
print("Durée minimale: " + str(minimum) + " - Du, au: "+ minimumTime)
print("Durée maximale: " + str(maximum) + " - Du, au: "+ maximumTime)
لم اشغل الكود لكن من الواضح انك لم تهتم ب التداخل overlap بين الفترات اي عندما يدخل الشخص ويجد اشخاص اخرين في الغرفة
باعتبار ان الوقت يبدأ ب 0 وينهي ب 24 وان وقت الدخول دائما اصغر من وقت الخروج
include
void main()
{
int i,n,in,out,tot=0,h[24]={0};
scanf("%d",&n);
while(n)
{
scanf("%d %d",&in,&out);
for(i=in;i<out;i++)
h[i]=1;
n--;
}
for(i=0;i<24;i++)
tot+=h[i];
printf("%d",tot);
}