Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में औसत प्रतीक्षा समय ज्ञात करने का प्रोग्राम


मान लीजिए हमारे पास एक सरणी customers है, जहां customers[i] में एक जोड़ी [arrival_i, time_i] होती है, यहां arrival_i i-वें ग्राहक का आगमन समय है। और आगमन समय कम से अधिक क्रम में क्रमबद्ध हैं। और time_i i-वें ग्राहक के ऑर्डर को तैयार करने के लिए आवश्यक समय है। अब, जब कोई ग्राहक आता है, तो वह ऑर्डर देता है, और वह ऑर्डर तभी तैयार होना शुरू होता है जब रसोइया खाली हो। रसोइया एक समय में एक से अधिक ग्राहक के लिए भोजन तैयार नहीं करता। और वह उनके ऑर्डर देने के क्रम में तैयार करता है। हमें सभी ग्राहकों का औसत प्रतीक्षा समय ज्ञात करना है।

इसलिए, यदि इनपुट है customers = [[7,2],[8,4],[10,3],[20,1]], तो आउटपुट 3.5 होगा क्योंकि,

  • पहला ग्राहक समय 7 पर आया, रसोइया ऑर्डर लेता है और तुरंत समय 7 पर तैयार करना शुरू करता है, और समय 9 पर समाप्त करता है, इसलिए पहले ग्राहक का प्रतीक्षा समय 9 - 7 = 2 है।

  • दूसरा ग्राहक समय 8 पर आया, शेफ उसका ऑर्डर लेता है और समय 9 पर तैयार करना शुरू करता है, और समय 13 पर समाप्त करता है, इसलिए दूसरे ग्राहक का प्रतीक्षा समय 13 - 8 = 5 है।

  • तीसरा ग्राहक समय 10 पर आया, शेफ उसका ऑर्डर लेता है और समय 13 पर तैयार करना शुरू करता है, और समय 16 पर समाप्त करता है, इसलिए तीसरे ग्राहक का प्रतीक्षा समय 16 - 10 = 6 है।

  • चौथा ग्राहक समय 20 पर आया, शेफ उसका ऑर्डर लेता है और तुरंत समय 20 पर तैयार करना शुरू करता है, और समय 21 पर समाप्त करता है, इसलिए चौथे ग्राहक का प्रतीक्षा समय 21 - 20 = 1 है।

  • इसलिए औसत प्रतीक्षा समय = (2 + 5 + 6 + 1) / 4 = 3.5।

इसे हल करने के लिए, हम निम्न चरणों का पालन करेंगे:

  • arr := एक नई सूची
  • time := 0
  • customers में प्रत्येक जोड़ी (i, j) के लिए, करें
    • यदि i > time, तो
      • time := i + j
    • अन्यथा,
      • time := time + j
  • (time-i) को arr के अंत में डालें
  • arr में सभी आइटम का औसत वापस करें

उदाहरण

बेहतर समझ के लिए निम्न कार्यान्वयन देखें:

def solve(customers):
    arr = []
    time = 0
    for i, j in customers:
        if i > time:
            time = i + j
        else:
            time += j
        arr.append(time - i)
    return sum(arr) / len(arr)

customers = [[7,2],[8,4],[10,3],[20,1]]
print(solve(customers))

इनपुट

[[7,2],[8,4],[10,3],[20,1]]

आउटपुट

3
  1. पायथन में बहुभुज का क्षेत्रफल खोजने का प्रोग्राम पायथन में बहुभुज का क्षेत्रफल खोजने का प्रोग्राम

    मान लीजिए हमारे पास एक 2D तल पर एक साधारण बहुभुज के अंतिम बिंदुओं को दर्शाने वाले क्रमबद्ध बिंदुओं की सूची है। हमें इस बहुभुज का क्षेत्रफल ढूंढना है।उदाहरण के लिए, यदि इनपुट points = [(0, 0), (0,5), (3, 5), (3,0)] है, तो आउटपुट 15 होगा।समाधान दृष्टिकोणइसे हल करने के लिए हम निम्न चरणों का पालन करेंगे

  1. पायथन में बहुभुज का परिमाप खोजने का प्रोग्राम पायथन में बहुभुज का परिमाप खोजने का प्रोग्राम

    मान लीजिए हमारे पास एक 2D तल पर एक साधारण बहुभुज के अंतिम बिंदुओं को दर्शाने वाले क्रमबद्ध बिंदुओं की सूची है। हमें इस बहुभुज का परिमाप ढूंढना है।उदाहरण के लिए, यदि इनपुट points = [(0, 0), (0,5), (3, 5), (3,0)] है, तो आउटपुट 16 होगा क्योंकिदो भुजाएं लंबाई 3 की हैं और दो भुजाएं लंबाई 5 की हैं, तो 2*5

  1. - पायथन में लिस्ट का औसत निकालना

    पायथन n नंबर के एलिमेंट की गणना के लिए sum फंक्शन प्रदान करता है। यहां हम इस फंक्शन का उपयोग करते हैं और फिर औसत निकालते हैं।एल्गोरिदमचरण 1: लिस्ट का साइज इनपुट करें। चरण 2: एलिमेंट इनपुट करें। चरण 3: sum फंक्शन का उपयोग करके सभी नंबर्स का योग निकालें। चरण 4: औसत निकालें।उदाहरण कोड# लिस्ट का औसत A =