সকলেই জানেন যে বিষয়বস্তুটি প্রশ্ন তোলে। তবে একটি ভাল শিরোনামও সহায়তা করে এবং এটি আমরা প্রথম দেখি। এই প্রথম ছাপটি একটি প্রোগ্রামে পরিণত করার সময়, এবং কী ধরণের শিরোনাম আরও বেশি উত্স পাবে তা নির্ধারণ করার সময়।
আপনাকে এতক্ষণে এমন কোনও প্রোগ্রাম বা ফাংশন লিখতে চ্যালেঞ্জ জানানো হয়েছে যা পিপিসি প্রশ্নের শিরোনামটিকে ইনপুট হিসাবে গ্রহণ করে এবং এর স্কোরের পূর্বাভাস দেয়।
উদাহরণস্বরূপ, আপনি Counting Grains of Rice
একটি ইনপুট হিসাবে গ্রহণ করতে পারেন এবং আপনি এক্ষেত্রে স্কোরের কাছাকাছি কিছু ফেরত দেওয়ার চেষ্টা করছেন 59
। অ-পূর্ণসংখ্যার অনুমানগুলি ঠিক আছে তবে অনুমান বা নীচে অনুমানগুলি -20
হয় না।
টেস্টিং এবং স্কোরিংয়ের জন্য ডেটা এখানে:
http://data.stackexchange.com/codegolf/query/244871/names-and-upvotes
স্কোরিং: আপনার প্রোগ্রামটি এই সাইটের (পিপিসিজি) ইতিহাসের প্রতিটি প্রশ্নের উপর পরিচালিত হবে, বন্ধ হওয়া প্রশ্নগুলি গণনা করা হবে না। ফাংশনটি ln(score + 20)
তখন প্রতিটি স্কোর এবং প্রতিটি অনুমানের জন্য প্রয়োগ করা হবে। দুটি ফলাফলের মানগুলির মধ্যে মূল-মধ্য-স্কোয়ার-ত্রুটিটি আপনার স্কোর score স্বল্পতা ভালো.
উদাহরণস্বরূপ, এমন একটি প্রোগ্রাম যা প্রতিবার 0 অনুমান করেছিল 0.5 স্কোর করবে, আর এমন একটি যা প্রতিবার 11 অনুমান করেছিল 0.37 স্কোর করবে।
দয়া করে আপনার স্কোর গণনা করুন এবং এটি আপনার উত্তরের শিরোনামে অন্তর্ভুক্ত করুন। এই প্রশ্নটি কতটা আপোভেটস পাবে তার জন্য দয়া করে আপনার প্রোগ্রামের পূর্বাভাসও অন্তর্ভুক্ত করুন।
সীমাবদ্ধতা:
অতিরিক্ত হার্ড-কোডিং প্রতিরোধ করতে, 1000 টির বেশি অক্ষর নেই।
যুক্তিসঙ্গত মেশিনে এক মিনিটের মধ্যে উপরে সেট করা সম্পূর্ণ ডেটা চালিয়ে যেতে হবে।
স্ট্যান্ডার্ড লুফোলগুলি বন্ধ রয়েছে।
পাইথনে আপনার পরীক্ষার জন্য এবং / অথবা অস্পষ্টতাগুলি পরিষ্কার করার জন্য এখানে একটি পরীক্ষক লিখেছেন:
import sys
import math
import csv
scores_dict = {}
with open(sys.argv[1], 'r') as csv_file:
score_reader = csv.reader(csv_file)
for score, title in score_reader:
if score == 'Score':
continue
scores_dict[title] = int(score)
def rate_guesses(guesser):
def transform(score):
return math.log(score + 20) if score > -20 else 0
off_by_total = 0
lines_count = 0
for title in scores_dict:
guessed_score = guesser(title)
real_score = scores_dict[title]
off_by_total += (transform(real_score) - transform(guessed_score)) ** 2
return (off_by_total/len(scores_dict)) ** .5
def constant11(title):
return 11
print(rate_guesses(constant11))
[closed]
এবং এর মতো জিনিসগুলি অন্তর্ভুক্ত বা বাদ দেওয়া হবে [on hold]
?