Module: (C++) लूप ऑपरेटर के लिए। विशिष्ट कार्य


Problem

13 /16


दूसरा अधिकतम

Theory Click to read/hide

कार्य

एन नंबर दिए गए हैं। अनुक्रम में दूसरा सबसे बड़ा तत्व खोजें।

यह समस्या दो व्याख्याओं की अनुमति देती है।
उदाहरण के लिए, यदि हमें संख्याओं का एक समूह दिया गया है: \(10\ 15\ 20\ 35\ 14\ 35\ 10\), तो उत्तर क्या होना चाहिए ?
"दूसरा सबसे बड़ा तत्व" के तहत या केवल "दूसरी अधिकतम", को इस रूप में समझा जा सकता है:
1) वह मान जो अंतिम स्थान पर होगा यदि हम गैर-घटते क्रम में सभी मानों को व्यवस्थित (क्रमबद्ध) करते हैं (प्रत्येक अगला एक पिछले एक से अधिक या उसके बराबर है)। फिर संख्याओं के सुविचारित सेट के लिए उत्तर मान 35 होगा;
2) तत्व का मान, जो केवल अधिकतम से अधिक है। तो जवाब है 20।
यदि संख्या के सेट में केवल एक अधिकतम तत्व है (अन्य सभी कम हैं), तो दोनों व्याख्याएं समान हैं, और उत्तर दोनों मामलों के लिए समान होगा, अन्यथा उत्तर अलग होगा।

पहले मामले पर विचार करें (हम एल्गोरिथम स्यूडोकोड).
उत्तर खोजने के लिए, हम दो चरों का उपयोग करेंगे:
1) <कोड>अधिकतम1 -अधिकतम मान (पहला अधिकतम);
2) अधिकतम2 - दूसरा अधिकतम (हमारा उत्तर)।

यदि मूल्यों की सीमा में परिवर्तन ज्ञात है, तो प्रारंभिक मूल्यों के रूप में हम एक संख्या लेते हैं जो स्पष्ट रूप से सीमा की निचली सीमा से कम है (उदाहरण के लिए, -1000 की सीमा के साथ) से 1000 - नंबर लें -1001)
यदि मानों की सीमा अज्ञात है, तो आप पहले दो इनपुट संख्याओं को चर max1 और max2 के प्रारंभिक मानों में लिख सकते हैं, और फिर इनकी तुलना कर सकते हैं दो चर। <पूर्व> इनपुट एन // संख्याओं की संख्या इनपुट ए, बी मैक्स 1 = ए अधिकतम 2 = बी अगर बी > ए, फिर     मैक्स 1 = बी     अधिकतम 2 = ए
अगला, हम अन्य सभी तत्वों पर विचार करते हैं (पहले 2 पहले ही देखे जा चुके हैं, इसलिए हम तीसरे से शुरू करेंगे) <पूर्व> एनसी मैं के लिए 3 से एन इनपुट ए अगर एक > अधिकतम 1 // अधिकतम 1 से अधिक मान था वह max2 = max1 // पूर्व का पहला उच्च दूसरा बन जाता है max1 = a // नया तत्व पहला अधिकतम होगा अन्यथा // अगला तत्व max1 से अधिक नहीं है // इसकी तुलना अधिकतम 2 मान से की जानी चाहिए अगर एक > अधिकतम 2 वह max2 = a // इसे नए मान max2 के रूप में लें // max1 इस मामले में नहीं बदलता है सभी सभी केटीएस
इस एल्गोरिथम को स्वयं लागू करने का प्रयास करें।

Problem

दिया गया N पूर्णांक। अनुक्रम का दूसरा सबसे बड़ा तत्व खोजें (यदि इनपुट गैर-अवरोही क्रम में क्रमबद्ध किया गया था तो तत्व अंतिम के बगल में होगा)।

इनपुट
पहली पंक्ति संख्या N (\(2<=N<=10^4\)) निर्दिष्ट करती है।  N पंक्तियां, प्रत्येक पंक्ति एक पूर्णांक 105 modulo से अधिक नहीं। 

छाप
दूसरा अधिकतम तत्व प्रिंट करें।

 

उदाहरण
<टेबल क्लास = "टेबल-बॉर्डर्ड टेबल-लिस्ट-टेस्ट टेबल-एसएम टेबल-स्ट्राइप्ड"> <सिर> <वें># <वें>इनपुट <वें>आउटपुट <शरीर> 1 7
10
15
20
35
14
35
10 35 2 5
10
5
7
11
9 10