मान लीजिए कि यह सरणी है कि पिछले 28 दिनों में मैंने कितने प्रेस-अप प्राप्त किए हैं:
[
20,20,20,30,30,30,30,
35,35,40,40,40,45,45,
50,50,50,50,50,50,50,
60,70,80,90,100,110,120
]
जैसा कि आप देख सकते हैं, यह पिछले सप्ताह में एक तेजी से ऊपर की ओर ले गया है, और यह इस डेटा का हिस्सा है जिसमें मैं सबसे अधिक दिलचस्पी रखता हूं। अतीत में यह जितना अधिक है, उतना कम है कि मैं उस डेटा को अपने 'औसत' में रखना चाहता हूं। 'प्रेस-अप की संख्या।
उस अंत तक, मैं एक 'औसत' पर काम करना चाहता हूं जहां प्रत्येक सप्ताह पिछले सप्ताह की तुलना में अधिक हो।
पृष्ठभूमि की जानकारी, इस समस्या का हिस्सा नहीं है।
सामान्य औसत:
सभी मानों का योग / मानों की संख्या
ऊपर के लिए:
1440/28 = 51.42857142857143
भारित औसत:
सरणी को 7 के 4 समूहों में विभाजित करें, और एक नया सरणी शुरू करें।
- सरणी में पहला समूह जोड़ें।
- दूसरे समूह को दो बार सरणी में जोड़ें।
- तीसरे समूह को सरणी में तीन बार जोड़ें।
- चौथे समूह को चार बार सरणी में जोड़ें।
की लंबाई से नई सरणी के सभी, और विभाजित योग नई सरणी।
ऊपर के लिए:
इसे सरणी में परिवर्तित करें:
[
20,20,20,30,30,30,30, # first week once
35,35,40,40,40,45,45,
35,35,40,40,40,45,45, # second week twice
50,50,50,50,50,50,50,
50,50,50,50,50,50,50,
50,50,50,50,50,50,50, # third week thrice
60,70,80,90,100,110,120,
60,70,80,90,100,110,120,
60,70,80,90,100,110,120,
60,70,80,90,100,110,120 # Fourth week four times
]
फिर उस एरे पर एक सामान्य औसत रन करें।
4310/70 = 61.57142857142857
ध्यान दें कि यह पिछले सप्ताह में ऊपर की ओर प्रवृत्ति के कारण सामान्य औसत मूल्य से अधिक है।
नियम:
- इनपुट 28 नॉनजेटिव पूर्णांकों का एक फ्लैट ऐरे है।
- आप जिस भी भाषा में लिखना चाहते हैं।
- एक नंबर आउटपुट।
- मैं हमेशा टीआईओ लिंक देखना पसंद करता हूं ।
- सबसे छोटी संख्या में बाइट्स में समस्या को हल करने का प्रयास करें।
- परिणाम कम से कम 4 दशमलव स्थानों के लिए एक दशमलव सटीक होना चाहिए (या तो परीक्षण के मामले के मूल्यों से छोटा या गोल है) या एक सटीक अंश।
परीक्षण के मामलों:
केस 1: ऊपर की ओर प्रवृत्ति
[
20,20,20,30,30,30,30,
35,35,40,40,40,45,45,
50,50,50,50,50,50,50,
60,70,80,90,100,110,120
]
सामान्य औसत: 51.42857142857143 भारित औसत: 61.57142857142857
केस 2: लुल्ला को पीछे छोड़ना
(मैं एक बुरा सप्ताह था, लेकिन यह कुछ समय पहले था)
[
50,50,50,50,50,50,50,
10,10,10,10,10,10,10,
50,50,50,50,50,50,50,
50,50,50,50,50,50,50
]
सामान्य औसत: 40 भारित औसत: 42
केस 3: देते हुए
मेरा सप्ताह खराब था, यह मेरे औसत को तेजी से नीचे खींच रहा है।
[
50,50,50,50,50,50,50,
50,50,50,50,50,50,50,
50,50,50,50,50,50,50,
10,10,10,10,10,10,10
]
सामान्य औसत: 40 भारित औसत: 34
केस 4: बाहर निकलना
ठीक है, इसलिए मैं बस यहां खेल रहा हूं, मैंने सोचा कि सामान्य और भारित औसत के लिए समान मूल्य हो सकता है, लेकिन निश्चित रूप से, यह नहीं था।
[
60,60,60,60,60,60,60,
30,30,30,30,30,30,30,
20,20,20,20,20,20,20,
15,15,15,15,15,15,15
]
सामान्य औसत: 31.25 भारित औसत: 24.0
बोनस की समस्या:
28 मानों के संयोजन में समान सामान्य औसत और भारित औसत क्या होगा?
हैप्पी गोल्फिंग!
new_avg = α*weekly_sum + (1-α)*old_avg
कुछ के लिए भी घातीय चौरसाई की कोशिश कर सकते हैं - कुछ के लिएα∈(0,1)
0
हर दिन प्रेस-अप करता हूं, इसलिए मेरा भारित औसत मेरे सामान्य औसत के समान है।