সমস্যা বিবরণ
n সংখ্যক দর্শক আছে (১ থেকে n লেবেল্ড)। নিচের নিয়মে দর্শকরা দাঁড়ায় ও বসে:
- সময়
t1-এ ১ম দর্শক দাঁড়ায়। - সময়
t2-এ ২য় দর্শক দাঁড়ায়। - ...
- সময়
tk-এ k-তম দর্শক দাঁড়ায়। - সময়
t(k+1)-এ (k+1)-তম দর্শক দাঁড়ায় এবং ১ম দর্শক বসে। - ...
- সময়
tn-এ n-তম দর্শক দাঁড়ায় এবং (n-k)-তম দর্শক বসে। - সময়
t(n+1)-এ (n+1-k)-তম দর্শক বসে। - ...
- সময়
t(n+k)-এ n-তম দর্শক বসে।
n, k, t-এর জন্য সময় t-এ কতজন দর্শক দাঁড়িয়ে আছে তা বের করুন।
উদাহরণস্বরূপ, n=11, k=6, t=4 হলে আউটপুট 4।
সমাধানের ধাপসমূহ
- যদি
t <= k, রিটার্নt। - যদি
t <= n, রিটার্নk। - অন্যথায়
res = t - n,res = k - res, রিটার্নres।
পাইথন কোড উদাহরণ
def how_many_stand(n, k, t):
if t <= k:
return t
elif t <= n:
return k
else:
res = t - n
res = k - res
return res
n = 11
k = 6
t = 4
print(how_many_stand(n, k, t)) # আউটপুট: 4
ইনপুট
11, 6, 4
আউটপুট
4