কির্ফোফের আইন প্রয়োগ করুন


15

কির্ফোফের আইন বলছে যে আপনি যখন সমস্ত স্রোত যোগ করলেন (কোনও জংশনে স্রোতের জন্য ধনাত্মক এবং বর্তমান একটি জংশন ছেড়ে যাওয়ার জন্য নেতিবাচক), আপনি সর্বদা ফলাফল হিসাবে 0 পাবেন।

নিম্নলিখিত চিত্রটি দেখুন:

এখানে চিত্র বর্ণনা লিখুন

কির্ফোফের আইন ব্যবহার করে, আপনি দেখতে পাচ্ছেন যে i1 + i4 - i2 - i3 = 0, সুতরাং i1 + i4 = i2 + i3।

দুটি তালিকা দেওয়া হয়েছে, একটিতে সমস্ত স্রোত যুক্ত একটি জংশনে প্রবেশ করে এবং একটিতে স্রোত ছেড়ে একটি স্রোত ছাড়াই একটি, শেষটিকে আউটপুট দেয়।

Testcases:

[1, 2, 3], [1, 2] = 3
[4, 5, 6], [7, 8] = 0
[5, 7, 3, 4, 5, 2], [8, 4, 5, 2, 1] = 6

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


1
ধাঁধাটি যদি আপনি প্রকৃতপক্ষে প্রতিরোধক এবং বর্তমান মান দেয় তবে আরও ভাল হত। এই প্রশ্নটি মনে হয় আপনি আইনটিকে ঠিক একটি নাম হিসাবে পরিচয় করিয়ে দিয়েছেন। (প্রশ্নটি আইন ব্যতিরেকে সহজেই বলা যেতে পারে)
ভূত_স_ই_কোড

5
কির্চফের বর্তমান আইন
লুইস মেন্ডো


আপনি নির্দিষ্ট করতে পারেন আমরা কেবল একটি ফাংশন তৈরি করতে পারি যা ফলাফলটি দেয় বা আসলে মুদ্রণ / ফলাফল প্রেরণ করে।
tpvasconcelos

উত্তর:


14

জেলি, 2 বাইট

_S

এখানে চেষ্টা করুন!

প্রথম আর্গুমেন্টে প্রবেশের স্রোতগুলি এবং দ্বিতীয় তর্কে প্রস্থান স্রোত গ্রহণ করে। _দীর্ঘতর তালিকা থেকে একক উপাদানকে যেমন রয়েছে তেমনি রেখে তাদের জোড় বিয়োগ করে এবং ফলাফলটির যোগফল Sদেয়।


9

হাস্কেল, 14 বাইট

(.sum).(-).sum

ব্যবহারের উদাহরণ: ( (.sum).(-).sum ) [5,7,3,4,5,2] [8,4,5,2,1]-> 6

প্রতিটি তালিকা যোগ করুন এবং পার্থক্য নিতে।


5

সিজেম, 8 6 বাইট

q~.-:+

ইনপুট দুটি সিজেম-স্টাইলের অ্যারে ব্যবহার করে।

সমস্ত পরীক্ষার কেস চালান। (এটি একবারে একাধিক পরীক্ষার কেসগুলি পড়ে এবং প্রতিটি লাইনে স্বতন্ত্রভাবে প্রক্রিয়া করার জন্য একটি কাঠামো অন্তর্ভুক্ত করে ইনপুট থেকে প্রত্যাশিত ফলাফলকে অস্বীকার করে))

ব্যাখ্যা

q~  e# Read and evaluate input.
.-  e# Elementwise difference.
:+  e# Get sum.

.-নির্ভরযোগ্যভাবে কাজ করে কারণ আমাদের নিশ্চিত যে প্রথম তালিকাটি সর্বদা দ্বিতীয়টির চেয়ে দীর্ঘ। (অন্যথায়, দ্বিতীয় তালিকার বহিরাগত উপাদানগুলি ফলাফলটিতে সংযুক্ত করা হবে যা তাদের বিয়োগের পরিবর্তে যোগফলের সাথে যুক্ত করবে would)


1
ঠিক ৮০ কে অভিনন্দন!
ETH প্রোডাকশনগুলি

4

এমএটিএল , 3 4.0 বাইট

_hs

ইনপুটগুলি হ'ল প্রথমে স্রোত রেখে, তারপরে স্রোতে প্রবেশ করা।

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

_     % implicitly input array with leaving currents (except one). Negate
h     % implicitly input array with entering currents. Concatenate  
s     % sum of all elements in concatenated array

আমার মতো হুবহু একই সমাধান, তবে বিভিন্ন বর্ণ সহ হাহা, +1
আদনান

@ আদনান আমি দেখেছি! (+1 ইতিমধ্যে)
লুইস মেন্ডো

@ আদনান আমি ইনপুট অর্ডার পরিবর্তন করে এবং উভয় অ্যারে সংযুক্ত করে 3 বাইট কমেছি। সম্ভবত এটি আপনার উত্তরের সাথেও প্রয়োগ করা যেতে পারে?
লুইস মেন্ডো

আহ্, আমার সত্যই একটি কনটেনেট ফাংশন প্রয়োগ করা উচিত: পি। খুব সুন্দর উত্তর! :)
আদনান

3

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

(a,b)=>eval(a.join`+`+'-'+b.join`-`)


3

05 এ বি 1 ই , 4 বাইট

কোড:

OEO-

ব্যাখ্যা:

O     # Take the sum of the input list
 E    # Evaluate input
  O   # Take the sum of the input list
   -  # Substract from each other

লুইস মেন্ডোকে আমাকে মনে করিয়ে দেওয়ার জন্য ধন্যবাদ যে আমাকে একটি যুগপত ফাংশন বাস্তবায়ন করতে হবে। আমি যদি তাড়াতাড়ি বাস্তবায়ন করে থাকি তবে এটি 3 বাইট হত:

অ-প্রতিযোগিতামূলক সংস্করণ (3 বাইট):

প্রথম তালিকাটি বর্তমান বর্তমান তালিকার নাম, দ্বিতীয়টি হ'ল বর্তমান তালিকা। কোড:

(«O

ব্যাখ্যা:

(    # Negate the list, e.g. [3, 4, 5] would become [-3, -4, -5]
 «   # Concatenate the second list to the first
  O  # Take the sum and implicitly output it

সিপি-1252 এনকোডিং ব্যবহার করে।





2

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

lambda a,b:sum(a)-sum(b)

অথবা

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

print sum(a)-sum(b)

যদি ফলাফল প্রিন্ট করা প্রয়োজন হয় বা কেবল একটি ফাংশন তৈরি করে যা এটি ফিরিয়ে দেয় depending


1

ES6, 39 বাইট

(i,o)=>i.reduceRight((r,a,j)=>r+a-o[j])

কারণ আমি ব্যবহার করতে চেয়েছিলাম reduceRight




1

কে 5, 5 বাইট

-/+/'

-/( +/) প্রতিটি ( ') সমষ্টি ওভার পার্থক্য ।

কর্মে:

  (-/+/')'((1 2 3;1 2);(4 5 6;7 8);(5 7 3 4 5 2;8 4 5 2 1))
3 0 6



0

কমন লিস্প রিপাবল, এসবিসিএল 28 24 বাইট

এটি REPL এ লিখুন:

#.`(-(+ #1=,@(read))#1#)

তারপরে এভাবে ইনপুট তালিকা লিখুন:

(2 3 4)
(2 3)

আমি আশা করি যে এই জাতীয় তালিকা বিন্যাসটি ব্যবহার করা ঠিক আছে (উদাহরণস্বরূপ '(2 3 4)) আমি করডাম্পের উত্তরটি ব্যবহার করেছি আমার সমাধানের সূত্র হিসাবে ব্যবহার করেছি এবং তারপরে তার গণনার প্রভাবটি অন্যভাবে অর্জন করেছি।

ব্যাখ্যা

দিন e_1,...,e_nপ্রথম তালিকার উপাদান হতে হবে এবং f_1,...,f_{n-1}দ্বিতীয় তালিকার উপাদান। আমরা এক্সপ্রেশন মূল্যায়ন করতে চান(-(+ e_1 e_2 ... e_n)f_1 f_2 ...f_{n-1}) অর্থ প্রথম তালিকার উপাদানগুলির যোগফল থেকে দ্বিতীয় তালিকার উপাদানগুলি বিয়োগ করা। প্রয়োজনীয় এক্সপ্রেশনটি এভাবে নির্মিত হয়:

ব্যাকউউটি মূল্যায়ন বন্ধ করে দেয়

#1= মনে রাখার মতো কিছুটা রক্ষা করে sa ,@(read)

,@ ব্যাককোটের প্রভাবগুলি থামায় (যাতে (পড়ুন) মূল্যায়ন করা হবে) এবং তালিকা থেকে উপাদানগুলি নিয়ে যায়।

(read) ইনপুট চেয়েছে

#1# "লোড" লিসপ অবজেক্ট এর দ্বারা সংরক্ষিত #1=

#. লিস্প অবজেক্টের মুদ্রিত উপস্থাপনার মূল্যায়ন করে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.