বাষ্প ব্যবহারকারীর কতটা খ্যাতি রয়েছে? [বন্ধ]


20

ভূমিকা

বাষ্পের সাথে পরিচিত না - বা কমপক্ষে এই বিশেষ দিকটি:

লোকের প্রোফাইলে প্রায়শই লোকেরা "+ রেপ _____" বা "-রূপ _____" বলে মন্তব্য করে। এই সম্প্রদায়ের কারওর বেশ কয়েকটি কারণে বিভিন্ন কারণে ভাল বা খারাপ সুনাম রয়েছে কিনা তা দেখানোর একটি আনুষ্ঠানিক উপায়। এই জাতীয় মন্তব্যগুলি দেখতে দেখতে:

+ একজন ভাল খেলোয়াড়ের প্রতিনিধি

+ প্রতিনিধি সহায়ক

-রেপ হ্যাকার

-আরপ স্ক্যামার


কার্য

প্রোগ্রামটি অবশ্যই কোনও sensকমত্যের মাধ্যমে ইনপুট নিতে হবে। ইনপুটটিতে alচ্ছিক নিউলাইনগুলি ( \n) সহ একটি স্ট্রিং থাকে । প্রতিটি লাইনের একেবারে শুরুতে '+rep 'বা '-rep 'উপস্থিত থাকতে পারে। বাকি রেখাটি ফেলে দেওয়া যেতে পারে। যদি লাইনটি শুরু হয় না '+rep 'বা '-rep '(পিছনের স্থানটি নোট করুন), তবে লাইনটি উপেক্ষা করা উচিত।

প্রোগ্রামটি অবশ্যই মোট খ্যাতি স্কোর রাখতে হবে। শুরু করে 0, এই স্কোরটি প্রতিটি লাইনে বৃদ্ধি করা উচিত যা শুরু হয় '+rep 'এবং শুরু হওয়া প্রতিটি লাইনে হ্রাস পায় '-rep '

এই ফলাফলটি কোনও সম্মতিযুক্তভাবে আউটপুট হওয়া উচিত।


পরীক্ষার মামলা

Input:
+rep fast trade
+rep nice person
-rep too good

Output: 1

Input:
-rep hacker
-rep scammer
-rep was mean

Output: -3

Input:
first
i don't like him
+rep good at cs go

Output: 1

Input (note the lack of a trailing space on the third line):    
+rep +rep
hi +rep
-rep

Output: 1

Input:
+ rep

Output: 0

Input:
+rep like
-thing

Output: 1

বোনাস

এটি সম্ভব কিনা আমি তাও জানি না তবে আপনি যদি কোনওভাবে বাষ্প থেকে এই মন্তব্যগুলি পেতে পারেন তবে বোনাস পয়েন্ট।


5
ধরে নিচ্ছি বোনাস পয়েন্টগুলি কাল্পনিক, সঠিক? এগুলি আসলে আপনার স্কোরকে প্রভাবিত করে না।
আর

2
আমরা কি অনুমান করতে পারি যে একমাত্র প্লাস এবং বিয়োগ চিহ্নগুলি '+ রেপ' / '- রেপ' তে আছে? প্রতিনিধিটি কি কেবল লাইনের শুরুতে হবে, না এটি মাঝখানেও থাকতে পারে?
আর

3
আমি এমন একটি টেস্ট কেস যুক্ত করার সুপারিশ করব যেখানে যেখানে লাইনের শুরুতে নয় এমন + রেপ বা রেপ রয়েছে
fəˈnɛtɪk

3
আমি বিশ্বাস করি যে উদাহরণ 4 এর আউটপুট থাকা উচিত 0, নয় 1
ডিজেএমসিএমহেম

10
হাই জ্যাকব, এবং পিপিসিজিতে আপনাকে স্বাগতম। আপনি এখানে আপনার প্রথম চ্যালেঞ্জের জন্য বেশ সক্রিয় কথোপকথনটি পরিচালনা করতে পেরেছেন! যেহেতু অন্য কেউ এখনও এটি উল্লেখ করেনি, তাই আমি আপনাকে স্যান্ডবক্সে নিয়ে যাব যেখানে আপনি অর্থবহ মতামত পেতে পারেন এবং মেইনকে চ্যালেঞ্জ পোস্ট করার আগে কোনও বিবরণ বা স্পষ্টকরণের কোনও সমস্যা হাতুড়ি করতে পারেন। ভবিষ্যতে, এটি আপনাকে ডাউনভোটস, ক্লোভোটস এবং এ জাতীয় পছন্দগুলি এড়াতে সহায়তা করবে। আমি আশা করি আপনি কাছাকাছি থাকা এবং আপনার থাকার উপভোগ করুন!
অ্যাডমবর্কবার্ক

উত্তর:


9

05 এ বি 1 , 18 16 17 বাইট

ওপেক্স
+1 বাইটকে 2 বাইট সংরক্ষণিত হয়েছে নির্দিষ্ট পরিবর্তনের কারণে যেখানে এখন কোনও স্থান অনুসরণ করার দরকার পড়ে।

|vy5£„+-S„·Ý «QÆO

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

|v                   # for each line of input
  y5£                # get the first 4 chars of input
     „+-S„·Ý «       # push the list ['+rep ','-rep ']
              Q      # check each for equality
                     # results in either [1,0] for +rep, [0,1] for -rep or [0,0] for others
               Æ     # reduce by subtraction, gives either 1, -1 or 0
                O    # sum

আপনি প্রতিস্থাপন করতে পারেন ð¡0èসঙ্গে । আমি আপনি যখন ছিলেন ঠিক একই সময়ে এর সমাধানে কাজ করছি।
Okx

@ এমিগনা আমার মনে হচ্ছে আমার ধারণাটি |ðý#D'·Ý©.åÏ®1:O14 বা 15 হতে পারে, আমি এটি কেবল দেখছি না। 16 এ আটকেও থাকতে পারে, যদিও এটি আপনাকে সহায়তা করবে। আমি এটা এখানে রেখে দেব। মূলত "1" সংখ্যার সাথে "রেপ" শব্দটি প্রতিস্থাপন করা হয় যাতে আপনি যোগফলটি পরিচালনা করতে পারেন।
ম্যাজিক অক্টোপাস আরন

@ কারাসোকম্পিউটিং: আমার মনে হয় এটি 14 মিনিটে আছে। আরও কিছু পরীক্ষা করা দরকার :)
এমিগানা

অনিবার্য জেলি টাই হওয়ার আগে পরাজিত করা আরও ভাল;)।
ম্যাজিক অক্টোপাস উরন

@ কারাসোকম্পিউটিং: আসলে আমার পথটি 0|vy4£'·Ý1:R.V+/- রেপির সাথে শুরু না হওয়া লাইনের জন্য কাজ করে না। অঙ্কন বোর্ডে ফিরে যান :(
এমিগানা

10

পাইথন 3, 73 বাইট

আমি নিশ্চিত যে এই উত্তরটি আবর্জনা এবং শীঘ্রই পিটানো হবে, তবে অজগরটির আর কোনও উত্তর নেই

lambda x:sum(["- +".index(i[0])-1for i in x.split('\n')if i[1:4]=="rep"])

এটি ব্যবহার করুন:

f = lambda x:sum(["- +".index(i[0])-1for i in x.split('\n')if i[1:4]=="rep"])
print(f("PUT INPUT HERE"))


বাষ্প থেকে আনছে

এখানে কিছু নমুনা কোড যা কেনেনি'র প্রোফাইল থেকে প্রথম 100 টি মন্তব্য এনেছে এবং তার প্রতিনিধি গণনা করে।

import requests
from bs4 import BeautifulSoup

# Kenny's profile as Steam ID 64
# You can adjust this to whatever numbers you want
STEAM_PROFILE_URL = "76561198024905796"
payload =  {"start" : 0, "count" : 100}
r = requests.post("http://steamcommunity.com/comment/Profile/render/{}/-1/".format(STEAM_PROFILE_URL), payload)

# Comments are html inside a json object
soup = BeautifulSoup(r.json()["comments_html"], "html.parser")

# Get raw text for every comment.
# The " ".join() strips out the newlines and tabs which are part of html
comments = [" ".join(s.text.split()) for s in soup.find_all("div", {"class" : "commentthread_comment_text"})]

calculateRep = lambda x:sum(["- +".index(i[0])-1for i in x.split('\n')if i[1:4]=="rep"])

print(calculateRep("\n".join(comments)))

if"rep"==i[1:4]-1
ovs

আপনার বর্গাকার বন্ধনীগুলির দরকার নেই
ovs

9

পার্ল 5 , 25 বাইট

24 বাইট কোড + -pপতাকা।

$\+=/^\+rep /-/^-rep /}{

এটি অনলাইন চেষ্টা করুন!

/^\+rep /1লাইনটি শুরু হলে ফিরে আসে +rep; লাইনটি শুরু হলে /^-rep /ফিরে আসে (সুতরাং কেবলমাত্র তাদের মধ্যে একটিই সর্বাধিক এক হবে)। আমরা ফলাফলটি সংরক্ষণ করতে ব্যবহার করি , কারণ এটি স্পষ্টতই প্রান্তে মুদ্রিত হয় ( পতাকা এবং সেই তুলনায় মেলে না বলে )।1-rep$\-p}{


দুটি বাইট যুক্ত করুন কারণ প্রতিনিধি পরে একটি স্থান হওয়া দরকার
fəˈnɛtɪk

এটি অনুমান থেকে খুব স্পষ্ট বলে মনে হয় না তবে যেহেতু সবাই এটি করছে, তাই আমি কম্পিউটারে আমার হাত পাওয়ার সাথে সাথে এটিকে সম্পাদনা করব।
দাদা

আমি এটিকে
চশমাগুলিতে

6

পাইথন 2 , 54 বাইট

q=('\n'+input()).count;print q('\n+rep ')-q('\n-rep ')

এটি অনলাইন চেষ্টা করুন! ইনপুট হিসাবে একটি বহুরেখা স্ট্রিং নেয়।

একটি নিউলাইন প্রতীক অনুসরণ করে স্ট্রিংটি অনুসন্ধান করে কেবলমাত্র লাইনের উপস্থিতিতে '+rep 'এবং '-rep 'কেবল শুরুর দিকেই গণনা করে । প্রথম লাইনটি ধরতে, একটি নতুন লাইন ইনপুটটিতে চাপানো হয়।


5

রেটিনা , 63 51 50 49 বাইট

অনুমানটির সাথে পুরোপুরি মেনে চলেনি তাই আমি কিছু সমস্যা সমাধান করেছি তবে এটিকে অনেক গল্ফ দিয়েছি (ক্রিটসি লিথোসের সমাধান থেকে প্রথম লাইন ধার করে)।

ক্রিটিকি লিথোসকে ধন্যবাদ জানিয়ে অন্য একটি বাইট সংরক্ষণ করেছেন।

ms`(?!^[+-]rep ).

+`\+-|-\+

(.)+
$1$.&
T`+
$^
0

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

ms`(?!^[+-]rep ).

প্রথমত, ইনপুট থেকে সবকিছু মোছা হয় তখন ছাড়া +এবং -কোনো +repবা -repএকটি লাইন শুরুতে।

+`\+-|-\+

তারপরে সংলগ্ন জোড়া +এবং -অপসারণ না করা অবধি মুছে ফেলা হবে। এর পরে, যা আছে তা হয় +s এর একটি রান, -s এর একটি রান , বা কিছুই নয়।

(.)+
$1$.&

তারপরে এক বা একাধিক অক্ষরের একটি রান (হয় +বা -) অক্ষরের পরিবর্তে রান তৈরির পরে দৈর্ঘ্যটি অনুসরণ করে। +ইতিবাচক ফলাফল এবং -নেতিবাচক জন্য এই ভাবে, সংরক্ষণ করা হয় ।

T`+

তারপরে সমস্ত +টি সরিয়ে ফেলা হয়, যদি ইভেন্টটি ইতিবাচক হয়।

$^
0

পরিশেষে, যদি স্ট্রিংটি এই মুহুর্তে খালি থাকে তবে প্রতিনিধি 0 হয়, সুতরাং আমরা 0 লিখি।


আপনি ড্রপ করতে পারেন এবং প্রথম লাইনের sপরে একটি (একক-লাইন মোড) যুক্ত করতে পারেনm
ক্রিটিসি লিথোস

4

জাভাস্ক্রিপ্ট, 55 বাইট

12 বাইট বন্ধ করে গল্ফ করার জন্য @ নীলকে ধন্যবাদ জানুন 2 বাইট বন্ধ করে গল্ফ করার জন্য @ আরনাউল্ডকে ধন্যবাদ

x=>x.split(/^\+rep /m).length-x.split(/^-rep /m).length

এটি অনলাইন চেষ্টা করুন!


splitপরিবর্তে 12 টি বাইট ব্যবহার করে সংরক্ষণ করুন match(এটি সর্বদা একটি অ্যারে দেয় যা আপনি সাধারণত চান এমন দীর্ঘ হয় তবে দুটি 1 বাতিল হয়)। আমিও সদৃশটি অপসারণ করার চেষ্টা করেছি তবে এটি আবার 57 বাইটে প্রকাশিত হয়েছিল।
নীল

3

গণিত, 47 বাইট (আইএসও 8859-1 এনকোডিং)

c_:=StringCount["
"<>#,c];±"
+rep""
-rep")&

খাঁটি ফাংশন ইনপুট হিসাবে একটি নিউলাইন-পৃথক স্ট্রিং গ্রহণ এবং একটি পূর্ণসংখ্যা ফেরত। নোট করুন যে কোডের তিনটি নতুনলাইনগুলি উদ্ধৃতি দ্বারা ফ্ল্যাঙ্ক করা হয়েছে এবং এভাবে প্রতিটি "\n"স্ট্রিংয়ের সমতুল্য হয় (তবে এই উপায়টি একটি বাইটের চেয়ে ছোট "\n")। StringCountভারী উত্তোলন না; স্ট্রিংয়ের শুরুতে আমরা ম্যানুয়ালি একটি নিউলাইন যুক্ত করি যাতে উপযুক্ত হলে প্রথম লাইনের সাথে মেলে। ±পুনরাবৃত্তি এড়াতে একটি অবিচ্ছিন্ন সহায়তা ফাংশন StringCount

বিকল্প সমাধান

(±c_:=StringCount["
"<>#,"
"<>c<>"rep"];±"+"-±"-")&

4 বাইট দীর্ঘ, তবে আমি ক্রমটি পছন্দ করি ±"+"-±"-"....


আমি মনে করি আপনার সম্ভবত প্রয়োজনের অংশ হিসাবে +/- এর পিছনে একটি স্থান যুক্ত করার প্রয়োজন হতে পারে
fəˈnɛtɪk

3

রেটিনা , 59 53 52 50 বাইট

ms`(?!^[+-]rep ).

+`\+-|-\+

-+
-$.&
\++
$.&
^$
0

এটি অনলাইন চেষ্টা করুন!

বেসিক সানসেটের সংক্ষিপ্ত উত্তরটি একই ভাষায় দেখুন!

ব্যাখ্যা

ms`(?!^[+-]rep ).

[+-]repএস বাদে সবকিছু সরিয়ে দেয় ।

+`\+-|-\+

বারবার -প্রতিটি জন্য +বিপরীতে 1 সরান এবং বিপরীতে।

-+
-$.&

একটি -(যেমন সংখ্যাটি negative ণাত্মক ) -এর পাশাপাশি এসগুলির স্থানে -এস এর সংখ্যার সাথে প্রতিস্থাপন করুন -

\+
$.&

+S এর জন্যও একই কাজ করুন , তবে একটি প্রিপেন্ড করবেন না -

^$
0

অবশেষে, যদি কিছু না থাকে তবে এটি দিয়ে একটি প্রতিস্থাপন করুন 0



ঠিক আছে তাই আমি এটিকে সত্যিকারের প্রশ্নের মধ্যে সম্পাদনা করেছি।
fəˈnɛtɪk

3

পিএইচপি, 118 বাইট

function s($a,$c=0){foreach(explode("
",$a)as$b){$b=substr($b,0,1).'1';if(is_numeric($b){$c+=$b});}return$c-($a=="");}

এটি অনলাইন চেষ্টা করুন!

এর মতো ব্যবহৃত:

echo s("-rep bad
+rep good
+rep very good
+rep exceeds expectation");

আপনি যদি খালি স্ট্রিংটি খাওয়ান তবে এটি 1 আউটপুট দেয়
fəˈn 16tɪk

@ fəˈnɛtɪk স্থির
স্টেইনবার্গ

আপনার লিঙ্কটি ঠিক করার পরামর্শ দিবে। আউটপুট দেওয়ার পরেও এটির ত্রুটি ঘটে যদি আপনি এটিকে একটি +/- রেপ রেখা দেন: P
fəˈnɛtɪk


1

জাভা, 109 বাইট

l->{int i=0;for(String s:l.split("\n")){if(s.startsWith("+rep "))i++;if(s.startsWith("-rep "))i--;}return i;}

ব্যবহার করে এই খাটো করতে চেষ্টা Stream'র


প্রতিনিধি পরে স্থান প্রয়োজন
fəˈnɛtɪk

1

স্ট্যাকড , 45 বাইট

'^([+-])rep |.'{.a:''['#'a+]a if}mrepl'0'\+#~

এটি অনলাইন চেষ্টা করুন!

বিকল্পভাবে (49 বাইট):

lines'^[-+]rep 'match$#'YES[0#0# '#'\+]"!''#`0\#~

ব্যাখ্যা

'^([+-])rep |.'{.a:''['#'a+]a if}mrepl'0'\+#~

এটি মূলত সমস্তটি বের করে +বা -রেখার শুরুতে এবং এর সাথে যুক্ত rep। তারপরে, প্রতিটি, এটি একটি preends #। তারপরে, সম্পূর্ণরূপে, একটি চাপ দেওয়া 0হয়। #~স্ট্রিংটি মূল্যায়ন করে, যা এখন এমন কিছু দেখাচ্ছে:

0#+#+#-

#+হ'ল বৃদ্ধি এবং #-হ্রাস। সুতরাং, আমরা আমাদের পছন্দসই ফলাফল প্রাপ্ত।


1

রেটিনা , 38 বাইট

M!m`^[+-]rep 
Os`.
+`\+-

*\M1!`-
[+-]

এটি অনলাইন চেষ্টা করুন!

ইতিমধ্যে রেটিনাতে পোস্ট হওয়াগুলির চেয়ে আলাদা (এবং সংক্ষিপ্ত) সমাধান।

ব্যাখ্যা

M!m`^[+-]rep 

(এই লাইনের একটি পিছনের স্থান রয়েছে)। ইনপুটটির কেবলমাত্র প্রাসঙ্গিক অংশ রাখুন, যেমন একটি রেখার শুরুতে +repবা -rep

Os`.

সমস্ত অক্ষর বাছাই করুন (নিউলাইনগুলি সহ)। এটি + গুলি এবং -কে একে অপরের পাশে রাখবে।

+`\+-

+-দুটি লক্ষণের মধ্যে একটির অবশেষে অবধি দম্পতিদের অপসারণ করুন ।

*\M1!`-

প্রথমটির সাথে মিলিত -(উপস্থিত থাকলে) এবং স্ট্রিংটি পরিবর্তন না করে এটি মুদ্রণ করুন।

[+-]

অবশিষ্ট চিহ্নগুলির সংখ্যা গণনা করুন এবং এটি মুদ্রণ করুন কারণ এটি প্রোগ্রামের চূড়ান্ত পর্যায়ে।


0

সি #, 87 বাইট

s=>{int n=0;foreach(var t in s.Split('\n'))n+=t.IndexOf("rep ")==1?44-t[0]:0;return n;}

বেনামে ফাংশন যা নতুন লাইন চরিত্রটি ব্যবহার করে ইনপুট স্ট্রিংকে বিভক্ত করে, কোনও চরিত্রের উপসর্গযুক্ত "রেপ" স্ট্রিং অনুসন্ধান করে এবং যদি এটি খুঁজে পায়, সুনাম ( nপরিবর্তনশীল) 1 বা -1 দ্বারা বৃদ্ধি করে ।

অসম্পূর্ণ পদ্ধতি এবং পরীক্ষার কেস সহ সম্পূর্ণ প্রোগ্রাম:

using System;

class P
{
    static void Main()
    {
        Func<string, int> f =
        s=>
        {
            int n = 0;
            foreach (var t in s.Split('\n'))
                n += t.IndexOf("rep ") == 1 ?
                    44 - t[0]
                    :
                    0;

            return n;
        };

        // test cases:
        Console.WriteLine(f(@"+rep fast trade
+rep nice person
-rep too good"));       // 1

        Console.WriteLine(f(@"-rep hacker
-rep scammer
-rep was mean"));       // -3

        Console.WriteLine(f(@"first
i don't like him
+rep good at cs go"));  // 1

        Console.WriteLine(f(@"+rep +rep
hi +rep
-rep"));            // 1

        Console.WriteLine(f(@"+ rep"));     // 0

        Console.WriteLine(f(@"+rep like
-thing"));          // 1
    }
}

মনে রাখবেন যে এর জন্য ASCII কোডটি +43 এবং -45 এর জন্য This এই পদ্ধতিটি ওপি থেকে সমস্ত পরীক্ষার ক্ষেত্রে পাস করে। তবে প্রথম চরিত্রটি যদি অন্য কিছু হয় তবে এটি ভুল উত্তর নিয়ে যাবে!

এটি 17 বাইট ব্যয়ে স্থির করা যেতে পারে:

সি # স্থির, 104 বাইট

s=>{int n=0;foreach(var t in s.Split('\n'))n+=t.IndexOf("rep ")==1?t[0]==43?1:t[0]==45?-1:0:0;return n;}

পরিবর্তিত বেনামী ফাংশন প্রতিটি লাইনের জন্য প্রথম অক্ষর হিসাবে একটি +বা -সাইন ইন পরীক্ষা করবে ।




0

সি # , 104 বাইট


ইতিমধ্যে একটি সমাধান বিদ্যমান থাকা সত্ত্বেও - এবং আমার দীর্ঘতর - আমার এখনও মনে হয় এটি পোস্ট করা উচিত, যেহেতু এখানে ইতিমধ্যে কিছু ব্যর্থ হতে পারে তবে ব্যর্থ হতে পারে '=rep '


Golfed

i=>{var c=0;foreach(var o in i.Split('\n'))c+=o.IndexOf("rep ")!=1?0:o[0]==43?1:o[0]==45?-1:0;return c;}

Ungolfed

i => {
   var c = 0;

   foreach( var o in i.Split( '\n' ) )
      c += o.IndexOf( "rep " ) != 1
         ? 0
         : o[ 0 ] == 43
            ? 1
            : o[ 0 ] == 45
               ? -1
               : 0;

   return c;
}

অসম্পূর্ণ পাঠযোগ্য

i => {
   // Counter for the 'reputation'
   var c = 0;

   // Cycle through every line
   foreach( var o in i.Split( '\n' ) )
      // Check if the "rep " string has index 1
      //   ( Index 0 should be the sign )
      c += o.IndexOf( "rep " ) != 1
         // Add 0 if the rep isn't on the right position
         ? 0
         // Check for the '+' sign
         : o[ 0 ] == 43
            // Add 1 if the sign is found
            ? 1
            // Check for the '-' sign
            : o[ 0 ] == 45
               // Add -1 if the sign is found
               ? -1
               // Add 0 if another char is found
               : 0;

   // Return the 'reputation'
   return c;
}

সম্পূর্ণ কোড

using System;
using System.Collections.Generic;

namespace Namespace {
   class Program {
      static void Main( String[] args ) {
         Func<String, Int32> f = i => {
            var c = 0;

            foreach( var o in i.Split( '\n' ) )
               c += o.IndexOf( "rep " ) != 1
               ? 0
                  : o[ 0 ] == 43
                  ? 1
                  : o[ 0 ] == 45
                     ? -1
                     : 0;

            return c;
         };

         List<String>
            testCases = new List<String>() {
               @"+rep fast trade
+rep nice person
-rep too good",
               @"-rep hacker
-rep scammer
-rep was mean",
               @"first
i don't like him
+rep good at cs go",
               @"+rep +rep
hi +rep
-rep",
               @"+ rep",
               @"+rep like
-thing",
         };

         foreach( String testCase in testCases ) {
            Console.WriteLine( $"{testCase}\n{f( testCase )}\n" );
         }

         Console.ReadLine();
      }
   }
}

রিলিজ

  • v1.0 - 104 bytes- প্রাথমিক সমাধান।

মন্তব্য

কিছুই যুক্ত করার নেই


0

রুবি, 46 বাইট

->x{rep=1;eval ?0+x.map{|a|a[/^[+-]rep /]}*''}

ইনপুট থেকে সমস্ত +/- প্রতিনিধি পান এবং একক স্ট্রিংয়ে একসাথে রাখুন। তারপরে এর মূল্যায়ন করুন = 1 এর জন্য।


0

জাভাস্ক্রিপ্ট ES6, 85 79 বাইট

l=>eval(l.split`
`.map(i=>(r=i.slice(0,5))==`+rep `?1:r==`-rep `?-1:0).join`+`)

চেষ্টা করে দেখুন

f=l=>eval(l.split`
`.map(i=>(r=i.slice(0,5))==`+rep `?1:r==`-rep `?-1:0).join`+`);

console.log(f(`+rep fast trade
+rep nice person
-rep too good`));

console.log(f(`-rep hacker
-rep scammer
-rep was mean`));

console.log(f(`first
i don't like him
+rep good at cs go`));

console.log(f(`+rep +rep
hi +rep
-rep`));

console.log(f(`+ rep`));

console.log(f(`+rep like
-thing`));


Ungolfed

const repcount=list=>{
    let array=list.split("\n");
    let values=array.map(item=>{
        let rep=item.slice(0,5);
        return rep==="+rep "?1:rep==="-rep "?-1:0;
    });
    let result=values.reduce((a,b)=>a+b);
    return result;
};

ইতিহাস

85 বাইট

l=>l.split`\n`.map(i=>(r=i.slice(0,5))=="+rep "?1:r=="-rep "?-1:0).reduce((a,b)=>a+b)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.