ভাত আর দাবা সমস্যা


41

একজন ভারতীয় কিংবদন্তি দাবা খেলার কথিত উদ্ভাবকের গল্পটি বলেছিলেন, যিনি তাঁর খেলায় ভারতের সম্রাটকে এতটাই মুগ্ধ করেছিলেন যে তাকে জিজ্ঞাসা করা কিছু দিয়ে পুরস্কৃত করা হবে।

লোকটি বলল সে ভাত দিয়ে দিতে চায়। তিনি দাবা বোর্ডের প্রথম স্কোয়ারের জন্য ধানের শীষ, দ্বিতীয়টির জন্য দু'টি, তৃতীয়টির জন্য চারটি, চতুর্থটির জন্য আটটি, এবং on৪ তম স্কোয়ার অবধি চান।

সম্রাট আশ্চর্য হয়েছিলেন যে লোকটি এত ছোট পুরষ্কার চেয়েছিল, কিন্তু তাঁর গণিতবিদগণ গণনা শুরু করার সাথে সাথে তিনি তার একটি প্রদেশ হারিয়েছিলেন।

কার্য

একটি অনুমানক দাবা বোর্ডের পাশের দৈর্ঘ্য (যা একটি ডিফল্ট দাবাবোর্ডের উপর 8) এবং বর্গক্ষেত্রের মধ্যে গুণক (যা কিংবদন্তীর মধ্যে 2) গণনা করে সম্রাটকে সেই ব্যক্তিকে অবশ্যই যে ভাত দিতে হবে তা গণনা করুন।

নোট

  • পার্শ্ব দৈর্ঘ্য সর্বদা একটি ধনাত্মক পূর্ণসংখ্যার হবে। গুণক পরিবর্তে যেকোন ধরণের যুক্তিযুক্ত সংখ্যা হতে পারে।

  • যদি আপনার পছন্দের ভাষাটি খুব বেশি সংখ্যক প্রদর্শন করতে না পারে, ততক্ষণ আপনার প্রোগ্রামটি সঠিকভাবে ছোট ইনপুটগুলি প্রক্রিয়া করতে পারে process

  • এছাড়াও যদি আপনার পছন্দের ভাষাটি বৃহত্তর মানগুলিকে গোল করে (ঘৃণ্য চিহ্ন সহ), যদি মানগুলি প্রায় সঠিক হয় তবে ঠিক আছে।

Testcases

Input (side length, multiplier) => Output
8, 2                            => 18446744073709551615
3, 6                            => 2015539
7, 1.5                          => 850161998.2854
5, -3                           => 211822152361
256, 1                          => 65536
2, 2                            => 15
2, -2                           => -5

স্পষ্ট সূত্র দয়া করে নোট করুন

result = (multiplier ^ (side ^ 2) - 1) / (multiplier - 1)

multiplier = 1হিসাবে ভুল সম্পাদন করে

1 ^ (side ^ 2) - 1 = 0
1 - 1 = 0
0 / 0 != side ^ 2 (as it should be)

স্কোরিং

এটি কোড-গল্ফ। বাইট জিতে সংক্ষিপ্ত উত্তর।


4
আপনি সম্ভবত একটি পরীক্ষার কেস চান যেখানে গুণকটি 1 এবং অন্য যেখানে এটি 0 (উভয়টি বৈধ মনে করে)। এছাড়াও "কিছু" বেশ প্রশস্ত, নেতিবাচক একটির বর্গমূল কি গণনা করে? কীভাবে "আলু"? ;) আমি "যে কোনও আসল নম্বর" বা কিছু সুপারিশ করব।
FryAmTheEggman

4
If your language of choose can't display too large numbers, it's ok as long as your program can correctly process smaller inputsসাবধান, এটি অতীতে সমস্যা তৈরি করেছে। meta.codegolf.stackexchange.com/a/8245/31716
DJMcMayhem

24
... এটি অবশ্যই একটি সমৃদ্ধ প্রদেশ ছিল, কারণ আজও, বার্ষিক বিশ্বের ধানের উত্পাদন এখনও 2 ^ 64 শস্যের চেয়ে কম।
বনাম

1
@vsz আসলে, লোকটিকে হত্যা করা হয়েছিল। রাজার যোগ করা পরিমাণটি লোকটিকে পুরো রাজত্ব দিয়ে দিয়েছিল, তাই স্বাভাবিকভাবেই সহজ উপায়টি নেওয়া হয়েছিল।
cst1992

1
@ cst1992 আমি যে সংস্করণটি পড়েছি তাতে বলা হয়েছে যে লোকটি তার অনুরোধটি ত্যাগ করে উপহার হিসাবে একটি প্রদেশ পেয়েছিল।
ব্যবহারকারী 6245072

উত্তর:


23

জেলি , 4 বাইট

²b1ḅ

এটি @ এপিএলডুডের চতুর এপিএল উত্তর থেকে পদ্ধতির ব্যবহার করে ।

এটি অনলাইন চেষ্টা করুন! বা সমস্ত পরীক্ষার কেস যাচাই করুন

কিভাবে এটা কাজ করে

²b1ḅ  Main link. Arguments: x (side length), y (multiplier)

²     Square; yield x².
 b1   Convert to base 1 (unary), yielding a list of x² ones.
   ḅ  Convert from base y to real number.
      This yields y^(x²-1) + ... + y + 1.


23

এপিএল, 10 বাইট

⎕⊥1+0×⍳⎕*2

দুবার ব্যবহারকারীর ইনপুট পড়তে ব্যবহৃত হয়। আমরা যদি পাশের দৈর্ঘ্য গুলি s এবং গুণককে এম তে সঞ্চয় করি তবে আমরা নীচের কোডটি পাই।

m⊥1+0×⍳s*2

এবং এখানে কীভাবে এপিএল এই কোডটিকে পার্স করে:

অ্যালগরিদমের ব্যাখ্যা


4
অথবা একটি ফাংশন ট্রেন হিসাবে: ⊣⊥1⍴⍨⊢×⊢(8 বাইট) একটি ইন্টারেক্টিভ আরপিএল কমান্ড হিসাবে, ⎕⊥×⍳⎕*2(7 বাইট) পাশাপাশি কাজ করে।
ডেনিস

19

পাইথন, 40 বাইট

lambda n,m:eval('1+m*('*n*n+'0'+')'*n*n)

এর মতো একটি স্ট্রিং উত্পন্ন এবং মূল্যায়ন করে

1+m*(1+m*(1+m*(1+m*(0))))

এটি শর্তাবলী সহ একটি Hornerized বহুবর্ষ হিসাবে যোগফলকে এনকোড করে n*n

বিভিন্ন পদ্ধতি প্রচুর অনুরূপ বাইট গণনা দিয়েছে:

#String evaluation
lambda n,m:eval('1+m*('*n*n+'0'+')'*n*n)   #40

#Direct summation
lambda n,m:sum(m**i for i in range(n*n))   #40
lambda n,m:sum(map(m.__pow__,range(n*n)))  #41

#Direct formula
lambda n,m:n*n*(1==m)or(m**n**2-1)/(m-1)   #40

#Iterative sequence
f=lambda n,m,j=0:j<n*n and 1+m*f(n,m,j+1)  #41
def f(n,m):s=0;exec"s=s*m+1;"*n*n;print s  #41

#Recursive expression
#Fails due to float imprecision of square root
f=lambda n,m:n and 1+m*f((n*n-1)**.5,m)    #39*

2
আহ ঠিক আছে, আমার খারাপ। যাইহোক, আপনি গ্রহণ করেছেন এমন সমস্ত ভিন্ন পদ্ধতি দেখতে সত্যিই আমি পছন্দ করি :)
FryAmTheEggman


11

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

n%m=sum$(m^)<$>[0..n*n-1]

তালিকার যোগফল [m^0, m^1, ..., m^(n*n-1)]


11

জাভাস্ক্রিপ্ট (ES2016 / ES7), 31 29 28 বাইট

a=>b=>(b**(a*a)-1)/--b||a*a

কেবল @ বাসড্রপ কম্বারবুবউবউব এবং @ কাইজোর ES6 সংস্করণ, তবে ক্ষতিকারক অপারেটর সহ। :) (পরিবর্তে মন্তব্য করার মতো যথেষ্ট খ্যাতি আমার ছিল না।)

সম্পাদনা: (ধন্যবাদ @ নীল) এ /+(b-1)পরিবর্তিত হয়েছে /--b

সম্পাদনা: এখন কার্য়িং ব্যবহার করা হয়েছে (ধন্যবাদ @ মামাফুনরল)।


পিপিসিজিতে আপনাকে স্বাগতম! আপনার উত্তরটি বেশ ভাল!
NoOneIsHere

স্বাগত! +অপারেটর, তাই আপনি এটা বাদ 1 বাইট বন্ধ শেভ করতে একটি পরীক্ষা আমি সম্পাদনা করতে ভুলে গেছি ছিল :)
Bassdrop Cumberwubwubwub

সূত্রটি মি = 1: 3
ইউজার 6245072

@ ব্যবহারকারী 6245072 আপনি কি ক্রোম ক্যানারিতে আছেন? নাকি নোডে? নোডে থাকলে, সম্প্রীতি পতাকাটি সক্ষম করুন
নিকক নিউম্যান 4'16 এ 4'16

চান /--bআপনি এক বা দুই বাইট সংরক্ষণ করবেন?
নিল



8

জাভাস্ক্রিপ্ট ES6, 59 37 35 34 বাইট

a=>b=>(Math.pow(b,a*a)-1)/--b||a*a` 

পুরোপুরি ১৯ বাইট কামিয়ে দেওয়ার জন্য @ কাইজোকে ধন্যবাদ, আরও ২ জনের জন্য @ নিল এবং আরও ১ জনের জন্য @ জি ক্যাম্পবেল!

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

বিকল্প ভাঙ্গা সংস্করণ

32 বাইট

(a,b)=>(Math.pow(b,a*a)-1)/(b-1)

NaNজন্য কারণ b==1

30 বাইট

(a,b)=>(Math.pow(b,a*a)-1)/~-b

Infinityজন্য কারণ b==1.5

28 বাইট

(a,b)=>~-Math.pow(b,a*a)/~-b

1কিছু বৈধ টেস্টকেসের আউটপুট ।

59 বাইট জন্য পুরানো সংস্করণ

(a,b)=>Array(a*a).fill``.reduce((c,d,i)=>c+Math.pow(b,i),0)


আপনি 32 বাইট ক্ষেত্রে সবেমাত্র b == 1 কেস কেন চিকিত্সা করেন নি? 40 বাইট: (ক, খ) => বি -১? (ম্যাথ.পো (খ, ক * ক) -১) / (খ -১): ক * ক
কাইজো

@ কাইজো আপনি ঠিক বলেছেন, আমি একজন বোকা: ডি
বাসড্রপ কম্বারবুবউবউব

/~-bস্পষ্টতই ভগ্নাংশের পক্ষে ভাল bনয়, তবে /--bকাজ করা উচিত, না?
নিল

যাইহোক, আমি পুরানো সংস্করণটি 47 বাইটে নামিয়েছিলাম:(a,b)=>[...Array(a*a-1)].reduce(s=>s+=p*=b,p=1)
নিল

@ নিল আপনি ঠিক বলেছেন, অবশ্যই। আপনি যখন আপনার উত্তরগুলিতে ছুটে আসেন তখন এটিই পাবেন: p ধন্যবাদ!
বাসড্রপ কম্বারবুবউবউব

6

জাভা, 132 বাইট

import java.math.*;Object e(int n,BigDecimal m){BigDecimal r=BigDecimal.ONE,a=r;for(n*=n;n>1;n--)r=r.add(a=a.multiply(m));return r;}

Ungolfed

import java.math.*;

Object e(int n, BigDecimal m) {
    BigDecimal r = BigDecimal.ONE, a = r;
    for (n *= n; n > 1; n--)
        r = r.add(a = a.multiply(m));
    return r;
}

নোট

  • এটি ওপি দ্বারা প্রয়োজনীয় হিসাবে নির্বিচারে বড় আউটপুটগুলির জন্য কাজ করবে (খুব খারাপ জাভা বড় সংখ্যা সমর্থন করে, অন্যথায় এটি সংক্ষিপ্ত হবে)।

আউটপুট

Input:      8 2.0
Expected:   18446744073709551615
Actual:     18446744073709551615

Input:      3 6.0
Expected:   2015539
Actual:     2015539

Input:      7 1.5
Expected:   850161998.2854
Actual:     850161998.285399449204543742553141782991588115692138671875

Input:      5 -3.0
Expected:   211822152361
Actual:     211822152361

Input:      256 1.0
Expected:   65536
Actual:     65536

Input:      2 2.0
Expected:   15
Actual:     15

Input:      2 -2.0
Expected:   -5
Actual:     -5

Input:      263 359.9
Expected:   ?
Actual:     9709...[176798 digits]...7344.7184...[69160 digits]...6291

6

আর, 18 বাইট

sum(m^(1:s^2-1))

ব্যাখ্যা:

sum(               # Calculate sum
    m              # Multiplier
     ^             # Exponentiate
      (1:s^2-1))   # Generate sequence from 1 to s(ide)^2-1


4

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

n#m=sum$take(n^2)$iterate(*m)1

বা সমানভাবে দীর্ঘ

n%1=n^2
n%m=(m**(n*n)-1)/(m-1)

প্রথম সংস্করণটি 1বারবার গুণিত দিয়ে শুরু হয় m। তারপরে এটি n^2এই ক্রমের প্রথম সংখ্যাগুলি যোগ করে। দ্বিতীয় সংস্করণ হ'ল সুস্পষ্ট সূত্র যা অন্যান্য উত্তরে দেখা যায়।


তুমি কি করতে পার না n#m=sum$(m^)<$>[0..n*n-1]?
xnor

@ এক্সনর: ওহ, খুব সুন্দর। আমি মনে করি এটি পৃথক উত্তরের জন্য যথেষ্ট আলাদা। এটি নিজে পোস্ট করুন।
নিমি

4

জে, 10 বাইট

+/@:^i.@*:

ব্যবহার

xসঠিক ফলাফল পেতে আমি বর্ধিত পূর্ণসংখ্যা ব্যবহার করতে প্রত্যয় দিয়ে কিছু পূর্ণসংখ্যা চিহ্নিত করি ।

   f =: +/@:^i.@*:
   2x f 8
18446744073709551615
   3x f 6
75047317648499560
   6x f 3
2015539
   1.5 f 7
8.50162e8
   _3x f 5
211822152361
   1 f 256
65536
   2 f 2
15
   _2 f 2
_5

ব্যাখ্যা

+/@:^i.@*:
        *:  Square the value s to get s^2
     i.@    Make a range from 0 to s^2 exclusive, [0, 1, ..., s^2-1]
    ^       Using m as the base, calculate the power with the range
            [m^0, m^1, ..., m^(s^2-1)]
+/@:        Sum the entire list and return it

#.*:$*এপিএল ডুড অনুসারে 6 বাইট
ফ্রাউনফ্রোগ 13

4

ম্যাথক্যাড, [টিবিডি] বাইটস (~ 11)

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

ম্যাথক্যাডের বিল্ট ইন সামিট অপারেটর ব্যবহার করে। সঠিক সূত্র উত্পন্ন করতে প্রতীকী প্রসেসরের সরলকরণও প্রদর্শন করে।

ম্যাথক্যাড কার্যকরভাবে সমান্তরালে দুটি প্রসেসিং ইঞ্জিন চালায় - একটি স্ট্যান্ডার্ড আইইইই 64৪/৮০ বিট ফ্লোটিং পয়েন্ট এবং অন্যটি একটি স্বেচ্ছাসেবী সংখ্যা দৈর্ঘ্যের প্রতীকী প্রক্রিয়া (মুপাদ)। স্ট্যান্ডার্ড সংখ্যাসূচক মূল্যায়ন সমান চিহ্ন (=) দ্বারা নির্দেশিত হয়, যখন ডান তীর প্রতীকী মূল্যায়ন নির্দেশ করে।


ম্যাথক্যাড কাউন্টিং স্কিম এখনও নির্ধারিত হয়নি তাই কোনও বাইট গণনা দেওয়া হয়নি।

সিটিএল- empty যোগফলের ভেরিয়েবল, প্রাথমিক মান, চূড়ান্ত মান এবং অভিব্যক্তি রাখার জন্য খালি স্থানধারক সহ সামিট অপারেটর (সিগমা) প্রবেশ করে। আনুমানিক বাইট সমতুল্য গণনা = 11।


কোডটি কোথায়?
Abr001am

1
আসল চ্যালেঞ্জের জন্য "কোড" হ'ল "চ্যালেঞ্জ সলিউশন" শিরোনামের অধীনে আপনি প্রথম সমষ্টি চিহ্ন (মূলধন সিগমা) দেখেন। "কোড" এর অন্যান্য বিটগুলি "সমাধানের রূপগুলি" শিরোনামে দেওয়া হয়েছে। আপনি চিত্রটিতে যা দেখছেন তা হ'ল ম্যাথক্যাড ওয়ার্কশিটে লিখিত হয় - ম্যাথক্যাড বিভিন্ন অপারেশনের জন্য গাণিতিক চিহ্ন ব্যবহার করে যেমন ভেক্টর যোগফল বা পণ্য, ফাংশন সংহতকরণ বা পার্থক্য বা লজিকাল ক্রিয়াকলাপ। বেশিরভাগ অপারেটর একটি মূল সংমিশ্রণ (উদাহরণস্বরূপ, অন্তর্নিহিত ভেক্টর যোগফলের জন্য সিটিএল -4 বা সিটিএল- এবং একটি পুনরাবৃত্ত সমষ্টি জন্য), অথবা একটি মেনু বা সরঞ্জামদণ্ডের মাধ্যমে ইনপুট হতে পারে।
স্টুয়ার্ট ব্রুফ

4

PostgreSQL, 67 66 বাইট

SELECT SUM(m^v)FROM(VALUES(3,6))t(s,m),generate_series(0,s*s-1)s(v)

SqlFiddleDemo

ইনপুট: VALUES(side, multiplier)


সম্পাদনা করুন:

ইনপুটটি টেবিলে স্থানান্তরিত হয়েছে, সমস্ত ক্ষেত্রে একবারে:

SELECT s,m,SUM(m^v)FROM i,generate_series(0,s*s-1)s(v)GROUP BY s,m

SqlFiddleDemo

আউটপুট:

╔══════╦══════╦══════════════════════╗
║  s   ║  m   ║         sum          ║
╠══════╬══════╬══════════════════════╣
║   7  ║ 1.5  ║ 850161998.2853994    ║
║   2  ║ 2    ║ 15                   ║
║   2  ║ -2   ║ -5                   ║
║ 256  ║ 1    ║ 65536                ║
║   5  ║ -3   ║ 211822152361         ║
║   8  ║ 2    ║ 18446744073709552000 ║
║   3  ║ 6    ║ 2015539              ║
╚══════╩══════╩══════════════════════╝

3

টিআই-বেসিক, 19 বাইট

Sপার্শ্ব দৈর্ঘ্য, এবং Mগুণক হয়।

Prompt S,M:Σ(M^I,I,0,S²-1

3

পাইথন, 40 বাইট

lambda l,m:sum(m**i for i in range(l*l))

1
lambda l,m:(m**(l*l)-1)/(m-1)
লিকি নুন

নিয়মিত ভাষায় সূত্র ব্যবহার করা সংক্ষিপ্ত হবে। আমি মানচিত্র ব্যবহার করেছি কারণ ইওসালংগুলিতে মানচিত্রগুলি সংক্ষিপ্ত হবে।
ফাঁস নুন

ধর্মঘট কোথায়?
ফাঁস নুন

@ কেনিলাউ আমি এখনও আমার উত্তর নিয়ে কাজ করছি, আপনার মন্তব্য দেখার আগে আমি এটি পোস্ট করেছি।
orlp

ঠিক আছে, (আরও 7 টি যেতে ...)
লিকি নুন

3

রুবি: 39 বাইট

->s,m{(0...s*s).reduce(0){|a,b|a+m**b}}

টেস্ট:

f = ->s,m{(0...s*s).reduce(0){|a,b|a+m**b}}

f[8,2]   # 18446744073709551615
f[3,6]   # 2015539
f[7,1.5] # 850161998.2853994
f[5,-3]  # 211822152361
f[256,1] # 65536
f[2,2]   # 15
f[2,-2]  # -5
f[1,1]   # 1

রুবি কখন একটি sumফাংশন পেলেন ??? এটি গেম চেঞ্জিং
মান কালি

ওহ না! আমি যা রুবি কোর পদ্ধতি হিসাবে ভেবেছিলাম তা আসলে রেল পদ্ধতিতে দু: খিত মুখ । আমি উত্তর আপডেট করেছি।
br3nt

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

3

পাইথন, 41 বাইট

এই গল্ফকারী জিনিসটিতে সম্পূর্ণ নতুন, সমালোচনা স্বাগত!

lambda n,m:sum(m**i for i in range(n**2))

এটি আসলে বেশ ভাল; )
user6245072

হা হা ধন্যবাদ. আমি আবার গুগল করতে হয়েছিল কীভাবে আবার পাইথনে ল্যাম্বডাস করব, যেহেতু আমি অল্প সময়ে পাইথন স্পর্শ করি নি।
ল্যাং ট্রান

প্রোগ্রামিং ধাঁধা এবং কোড গল্ফ স্বাগতম! এটি একটি চমৎকার উত্তর, কিন্তু এটা বরং অনুরূপ এই এক
ডেনিস

আহ, আমি অন্য কোন সমাধান আছে কিনা তা দেখতে পেলাম না। আমি l**lযা করেছি তার পরিবর্তে তিনি কি একটি বাইট সংরক্ষণ করেছিলেন?
ল্যাং ট্রান

l*lআসলে, যা তুলনায় খাটো l**2
ডেনিস

2

জल्फ, 18 15 10 বাইট

3 বাইট বাঁচানোর জন্য এবং আমাকে ম্যাপিংয়ের দিকে নির্দেশ করার জন্য সি ও'বিকে ধন্যবাদ

uΜzQjd^JwH

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

 ΜzQj       Map over an array of 1 -> square(side length)
     d^JwH  Set the current array value to multiplier^(current value - 1)
u           Sum the array

চমৎকার কাজ! জেটের আগে আপনি এটি সরিয়ে ফেলতে পারেন, কারণ এটি সুস্পষ্টভাবে আউট করা হয়। আপনি প্রত্যেকের পরিবর্তে মু (মানচিত্র) ব্যবহার করতে পারেন এবং আমি মনে করি আপনি ডি এর সাথে বিজ্ঞাপনটি প্রতিস্থাপন করতে পারেন এবং শেষ remove মুছে ফেলতে পারেন}
কনর ও'ব্রায়েন

1
@ সি ও'বিয়ে ঝরঝরে, জল্ফের অন্তর্নিহিত অংশগুলি সম্পর্কে ভুলে যেতে থাকুন, তারা অবশ্যই কয়েকটি বাইট ছাঁটাই করার কয়েকটি সেরা উপায়।
ফুলে

2

সিজেম , 9 বাইট

q~2#,f#:+

ইনপুটগুলি বিপরীত ক্রমে একটি নতুন লাইন বা একটি স্থান দ্বারা পৃথক করা হয়।

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

q~    e# Read input. Evaluate: pushes the two numbers, M and N, onto the stack
2#    e# Square: compute N^2
,     e# Range: generates array [0 1 ... N^2-1]
f#    e# Compute M raised to each element of the array [0 1 ... N^2-1]
:+    e# Fold addition: compute sum of the array [M^0 M^1 ... M^(N^2-1)]

2

পিএইচপি, 58 54 বাইট

<?function a($n,$m){$n*=$n;echo(1-$m**$n)/(1-$m)?:$n;}

গুণকটি 1 (যা সূত্রটিতে এনএএনকে ফেরত দেয়) যাচাই করার পরে এটি কেবল মূল্য দেখানোর জন্য সংক্ষেপ সূত্রটি ব্যবহার করে।


2

গণিত, 22 বাইট

Tr[#^(Range[#2^2]-1)]&

একটি ব্যাপ্তি তৈরি করে {1, 2, ... s^2}, এটি তৈরি করতে 1 টি বিয়োগ করে {0, 1, ..., s^2-1}। তারপরে প্রতিটি mতৈরির ক্ষমতায় উন্নীত করুন {m^0, m^1, ..., m^(s^2-1)}এবং এর যোগফল ফিরিয়ে দিন।

বিকল্পভাবে, গাণিতিক তার সীমাবদ্ধতা নিয়ে সুস্পষ্ট সূত্রটি ব্যবহার করতে পারে। এর জন্য 29 বাইট দরকার ।

Limit[(s^#^2-1)/(s-1),s->#2]&

আপনি আপনার প্রথম সংস্করণটি লিখতে পারেনTr[#^Range[#2^2]/#]&
সাইমন উডস


1

সি #, 56 বাইট

double f(int n,double q){return(Math.Pow(q,n*n)-1)/--q;}

টেস্টকেস 256, 1?
ব্যবহারকারী 6245072

এটি কি 256 ^ 2 নয়?
ডাউনরেপ_নেশন

1
(Math.Pow(1, 256 * 256) - 1) / --1= 0/0।
user6245072

1
আপনার প্রয়োজন হয় সিস্টেম ব্যবহার করা; অথবা System.Math.Pow। এবং আপনার কোড কাজ করে না, যখন q = 1, @ user6245072 দ্বারা বর্ণিত।
হরভথ ডেভিড

1

লুয়া, 54 47 বাইট

r=0l,m=...for i=0,l^2-1 do r=r+m^i end print(r)

প্রথম আর্গুমেন্ট হিসাবে বোর্ড পাশের দৈর্ঘ্য এবং দ্বিতীয় হিসাবে গুণক হিসাবে কমান্ড লাইন থেকে চালান।

66 বাইট সংরক্ষণের জন্য ব্যবহারকারীর 6245072 এবং অতিরিক্ত 1 টি সংরক্ষণের জন্য ক্যাটেনকিওকে ধন্যবাদ


আসল 54 বাইট সংস্করণ:

a,b=...c=1 d=1 for i=2,a^2 do c=c*b d=d+c end print(d)

হ্যালো, এবং পিপিসিজিতে আপনাকে স্বাগতম! দুর্দান্ত উত্তর!
NoOneIsHere

l,m=...r=0 for i=0,l^2 do r=r+m^i end print(r)
ব্যবহারকারী 6245072

এটি কিছু বাইট সংরক্ষণ করা উচিত।
ব্যবহারকারী 6245072

ডি নাম বদলানো একটি বাইট সংরক্ষণ করে কারণ এটি c=1 d=1=> এ স্থানটি এড়াতে দেয় a,b=...c=1g=1 for i=2,a^2 do c=c*b g=g+c end print(g)। যদি @ ইউজার 6245072 এর পরামর্শ কাজ করে তবে আপনি একই নীতিতে একটি বাইট সংরক্ষণ করতে পারেন =>r=0l,m=...for i=0,l^2 do r=r+m^i end print(r)
কেটেনকিও

শ্বেতস্পেসের মধ্যে r=0এবং l,m=...যাইহোক বাধ্যতামূলক, তাই এটি পরিবর্তন হয় না। এছাড়াও লুপটি হওয়া উচিত for i=0,l^2-1তবে এটি আমার দোষ লও।
user6245072

1

𝔼𝕊𝕄𝕚𝕟, ১১ টি চর / 14 বাইট

⨭⩥ î²)ⓜⁿ⁽í$

Try it here (Firefox/WebKit Nightly only).

হ্যাঁ, এখন ওয়েবকিট নাইটে কাজ করে! ক্রোম সমর্থন পরবর্তী।

ব্যাখ্যা

⨭⩥ î²)ⓜⁿ⁽í$ // implicit: î = input1, í = input2
   ⩥ î²)       // generate a range [0..î^2)
                     ⓜ      // map over range ($ is mapitem):
        ⁿ⁽í$  //   í^$
⨭            // sum resulting range
              // implicit output

1

ফিরে , 32 বাইট

[a:2^0\
{[$¥][a;\^]#[¤¥][+]#]!

Try it here.

বেনামে ল্যাম্বদা যা স্ট্যাক 2-এ ফল দেয়। ব্যবহার:

8 2[a:2^0\
{[$¥][a;\^]#[¤¥][+]#]!

ব্যাখ্যা

[                              ]!  lambda
 a:                                store multiplier to a
   2^                              square side-length
     0\␊                           create range [0..result)
        {                          set current stack to range
         [  ][     ]#              while loop
          $¥                         check if TOS is truthy
              a;\^␌                  if so, push a^TOS to Stack2
                     ␁            set current stack to Stack2
                       [¤¥][+]#    sum Stack2
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.