ধরুন আমাদের n উপাদান সহ একটি অ্যারে A আছে। অমল 90 মিনিটের একটি ম্যাচ দেখতে চায় এবং কোন বিরতি নেই। প্রতিটি মিনিট আকর্ষণীয় বা বিরক্তিকর হতে পারে। টানা ১৫ মিনিট বিরক্তিকর হলে অমল সাথে সাথে টিভি বন্ধ করে দেয়। অ্যারে দ্বারা উপস্থাপিত n আকর্ষণীয় মিনিট থাকবে। আমাল কত মিনিটের খেলা দেখবে তা আমাদের গণনা করতে হবে।
সুতরাং, যদি ইনপুটটি A =[7, 20, 88] এর মত হয়, তাহলে আউটপুট হবে 35, কারণ 20 এর পরে, সে এখনও 35 পর্যন্ত গেমটি দেখবে, তারপর এটি বন্ধ করে দেবে।
পদক্ষেপ
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
Define an array a of size: 100. n := size of A for initialize i := 1, when i <= n, update (increase i by 1), do: a[i] := A[i - 1] if a[i] - a[i - 1] > 15, then: Come out from the loop return minimum of (a[i - 1] + 15) and 90
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
#include <bits/stdc++.h> using namespace std; int solve(vector<int> A){ int i, a[100]; int n = A.size(); for (i = 1; i <= n; i++){ a[i] = A[i - 1]; if (a[i] - a[i - 1] > 15) break; } return min(a[i - 1] + 15, 90); } int main(){ vector<int> A = { 7, 20, 88 }; cout << solve(A) << endl; }
ইনপুট
{ 7, 20, 88 }
আউটপুট
35