পার্থক্য কোন পার্থক্য করা উচিত


40

আপনার সংস্থা ইদানীং অত্যন্ত উত্সর্গীকৃত সিসাদমিনগুলির একটি নতুন গোছা ভাড়া করেছে । তারা অনুভব করে যে কেবল কম্পিউটারের পর্দা দেখা বেশ সীমাবদ্ধ (যার অর্থ, 60Hz রিফ্রেশ হার কেবল পর্যাপ্ত নয়), তাই তারা সিপিইউ ডেটা বাসটিকে একটি ড্যাকের কাছে নিয়ে গিয়ে সার্ভার রুমের মাধ্যমে স্পিকারে খেলায় যাতে তারা শুনতে পায় can থেকে 20kHz। একটি সমস্যা: তারা সিসডমিনস, বৈদ্যুতিক প্রকৌশলী নয় এবং তাদের স্পিকারের সেটআপটি ভেঙে যায়। তারা বুঝতে পেরেছিল যে সফ্টওয়্যার ইঞ্জিনিয়াররা মেইনফ্রেমে সংকলন করে কোডটিতে বাইট মানগুলিতে খুব আকস্মিক পরিবর্তনের ফলে এটি ঘটে। সিসাডমিনরা এখন তাদের স্পিকার সেটআপের ক্ষেত্রে সবচেয়ে নম্রতম কোডটি কে তৈরি করতে পারে তা দেখার জন্য একটু প্রতিযোগিতার হোস্ট করছে।

চ্যালেঞ্জ

আপনার মিশনটি এমন একটি প্রোগ্রাম তৈরি বা পছন্দের ভাষায় ফাংশন করা যা ধারাবাহিক বাইটগুলির মধ্যে যতটা সম্ভব সামান্য পার্থক্য রয়েছে (গণনা বিভাগটি দেখুন)। এই প্রোগ্রামটির নিজস্ব স্কোর গণনা করার কাজ থাকবে।

ইনপুট

stdinযদি আপনি কোনও ফাংশন তৈরি করেন তবে একটি এএসসিআইআই স্ট্রিং বা আপনার ভাষার নিকটতম সমতুল্য, বা কোনও ফাংশন ইনপুট হিসাবে। যেহেতু আপনার প্রোগ্রামটি আপনার স্কোর গণনার জন্য নিজেকে ইনপুট হিসাবে নিতে হবে, আপনার প্রোগ্রামটিতে ইউনিকোড থাকলে কোনও ইউনিকোড সমর্থন করা উচিত। অন্যথায়, এএসসিআইআই যথেষ্ট। ইনপুটটি কমপক্ষে 2 বাইট দীর্ঘ বলে ধরে নেওয়া যেতে পারে।

হিসাব

স্ট্রিংয়ের প্রতিটি অক্ষরকে ASCII স্ট্যান্ডার্ডটি ব্যবহার করে এটির সংখ্যাসূধ্রে রূপান্তরিত করা হবে। তারপরে, সমস্ত অক্ষরের মধ্যে পার্থক্যটি প্রথমে স্কোয়ার করা হবে এবং তারপরে সংক্ষিপ্ত করা হবে । উদাহরণস্বরূপ, স্ট্রিং abdএকটি স্কোর পাবে 1²+2²=5

আউটপুট

আউটপুট আপনার প্রবেশের শিরোনাম হবে। এর অর্থ হ'ল এটি একটি দ্বারা #বা নতুন লাইন এবং একটি -(ড্যাশ) দ্বারা সংযুক্ত করা উচিত । তারপরে, এটি আপনার প্রোগ্রামিং ভাষার নাম আউটপুট করা উচিত, তার পরে কমা, একটি স্থান এবং তারপরে একটি পূর্ণসংখ্যা গণনার ফলাফলকে উপস্থাপন করে। উদাহরণ স্বরূপ

#C++, 98

বৈধ আউটপুট হবে। আউটপুট চালু করা উচিত stdoutবা আপনার ভাষার নিকটতম সমতুল্য, বা আপনার ফাংশনটিতে ফেরতের মান হিসাবে।

স্কোরিং

আপনার স্কোরটি আপনার প্রোগ্রাম দ্বারা গণিত মান হবে, প্রোগ্রামটি নিজেই ইনপুট হিসাবে।

সম্পাদনা করুন: এখন নতুন লাইনগুলি হ্যান্ডেল করা উচিত, লোকজনের জন্য দুঃখিত

স্কোর গণনা যাচাই করার জন্য এখানে পাইথ স্ক্রিপ্ট is


1
প্রোগ্রামটির নিজস্ব কোড ব্যতীত অন্য কিছু ব্যাখ্যা করতে হবে? এবং কেবল পরিষ্কার করার জন্য, দুটি পরপর সমান অক্ষর 0 এর মান?
ড্যানিয়েল এম। 19


1
@ bopjesvla ফাইন নির্বিচারে স্ট্রিংগুলি, তবে আপনি সেগুলি মহাবিশ্বে ফিট করতে পারবেন বলে ধরে নিতে পারেন। বা আপনার কম্পিউটারে, এই বিষয়ে।
সান্চাইজস

11
প্রথম ব্যক্তি ইউনারি জানে একটি বৈধ উত্তর তৈরি !
ETH প্রোডাকশনস

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

উত্তর:


19

সিজেম, 1051 827 643 569 545 407 327 279 235 233 229

''"','#'C'J'a'm',' qYew::-Yf#:+e#'''''''''"
f{-ci'(*''2*\}'^,40>"*/:N"-"][ZZ[\^__`bcdgimpstsz{}~~~"

উপরের প্রোগ্রামটি প্রকৃত উত্স কোড উত্পন্ন করে যা 1,179,112 বাইট দীর্ঘ।

পরীক্ষামূলক

জাভা দোভাষী ব্যবহার করে উত্স কোডটি এই জাতীয় উত্পন্ন এবং পরীক্ষা করা যেতে পারে:

$ alias cjam='java -jar cjam-0.6.5.jar'
$ cjam gen.cjam > diff.cjam
$ cksum diff.cjam 
896860245 1179112 diff.cjam
$ cjam diff.cjam < diff.cjam
#CJam, 229

বিকল্প সংস্করণ

৩ points পয়েন্টের ব্যয়ে - ২5৫ এর চূড়ান্ত স্কোরের জন্য - আমরা উত্স কোডটি 99.92% ছোট করতে পারি:

'''()))))(''''(((('''())))))))))))))))))))))))))))('''()))))))))))))))))))))))))))))))))))('''())))))))))))))))))))))))))))))))))))))))))))))))))))))))))('''())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))('''()))))(''''((((((('())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))('())))))))))))))))))))))))))))))))))))))))))))))))))('())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))('())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))('()))))))))))))))))))('()))))))))))))))))))('())))))('())))))))))))))))))))))))))))))))))))))))))))))))))('()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(''(((('()))))))))))))))))))('())))('())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(''((((''''''''''''''''''()+,-.0123456789;<=>?@ABCDEFGHIJKLMOPQRSTUVWXYZ[\]][ZZ[\^__`bcdgimpstsz{}~~~

আপনি সিজেএম ইন্টারপ্রেটারে এই সংস্করণটি অনলাইনে চেষ্টা করতে পারেন ।

ধারণা

আমরা কোডটি কার্যকর করতে চাই

'#'C'J'a'm',' qYew::-Yf#:+

স্কোর যতটা সম্ভব কম রাখা। এটি অর্জনের জন্য, আমরা সেই স্ট্রিং চরিত্রটি অক্ষর দ্বারা তৈরি করতে যাচ্ছি (এর আগে এবং পরে কয়েকটি নো-অপ্স সহ) এবং ফলাফলটি মূল্যায়ন করব।

ভাগ্যক্রমে, '(অক্ষরের অক্ষরে ধাক্কা), ((হ্রাস) এবং )(বৃদ্ধি) ক্রমাগত ASCII অক্ষর, সুতরাং স্বেচ্ছাচারী অক্ষরগুলি ঠেলাঠেলি তুলনামূলকভাবে সস্তা ex

  • ASCII অক্ষরের পরে 'ধাক্কা দেওয়া যেতে পারে '()…)(, যেখানে )কোড পয়েন্টের উপর নির্ভর করে সংখ্যা ।

    উদাহরণস্বরূপ, +হিসাবে ঠেলা যায় '())))(। এবং এবং এর মধ্যে দূরত্ব 1 'এবং পিছনে একে অপরকে বাতিল করুন; তাদের একমাত্র ক্রিয়াটি পরের অক্ষরগুলির সাথে নিম্নলিখিতগুলির (পরবর্তী চরিত্রের সাথে সম্পর্কিত) পথ প্রশস্ত করা ।(())('

    এই ফ্যাশনে ঠেলা অক্ষরগুলি স্কোরটি 4 পয়েন্ট বাড়িয়ে তুলবে

  • এর আগে ASCII অক্ষরগুলিকে 'হিসাবে ধাক্কা দেওয়া যেতে পারে ''(…(, যেখানে (কোড পয়েন্টের উপর নির্ভর করে সংখ্যা ।

    উদাহরণস্বরূপ, #হিসাবে ঠেলা যায় ''((((। এর মধ্যে 'এবং দূরত্ব (1।

    এই ফ্যাশনে ধাক্কা দেওয়া অক্ষরগুলি স্কোরকে 2 পয়েন্ট বাড়িয়ে তুলবে

  • ''(…(আসলে জন্য কাজ করে সব , ASCII অক্ষর থেকে ক্যারেক্টার 16 বিট চওড়া এবং কাছাকাছি গোপন। উদাহরণস্বরূপ, 65,532 এস দ্বারা অনুসরণ করা +যেতে পারে ।''(

    এই কৌশলটি কোডের 1.2 মেগাবাইট সংস্করণে ব্যবহৃত হয়।

  • চরিত্রটিকে 'ধাক্কা দেওয়া ''যায়, স্কোরকে প্রভাবিত না করে।

কোড

e# Push these characters on the stack: ','#'C'J'a'm',' qYew::-Yf#:+e#'''''''''

''
'()))))(
''
''((((
''
'())))))))))))))))))))))))))))(
''
'()))))))))))))))))))))))))))))))))))(
''
'())))))))))))))))))))))))))))))))))))))))))))))))))))))))))(
''
'())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(
''
'()))))(
''
''(((((((
'())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(
'())))))))))))))))))))))))))))))))))))))))))))))))))(
'())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(
'())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(
'()))))))))))))))))))(
'()))))))))))))))))))(
'())))))(
'())))))))))))))))))))))))))))))))))))))))))))))))))(
'()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(
''((((
'()))))))))))))))))))(
'())))(
'())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(
''((((
''
''
''
''
''
''
''
''
''()

+                         e# Concatenate the two topmost single quotes.
,                         e# Push the length of the resulting string (2).
-.0123456789              e# Push that number.
;                         e# Discard it from the stack.
<                         e# Compare a single quote with 2. Pushes 0.
=                         e# Compare a single quote with 0. Pushes 0.
>                         e# Compare a single quote with 0. Pushes 1.
?                         e# Ternary if. Discards a single quote and 1.
@                         e# Rotate the remaining three single quotes.
ABCDEFGHIJKLMOPQRSTUVWXYZ e# Push 25 items on the stack.
[\]                       e# Swap the last two and wrap them in an array.

e# So far, we've pushed the elements of "','#'C'J'a'm',' qYew::-Yf#:+e#'''"
e# followed by the elements of [10 11 12 13 14 15 16 17 18 19 20]
e# and ["" "" "" 3.141592653589793 "" "" " " 0 0 0 -1 1 [3 2]].

]    e# Wrap the entire stack in an array.
[    e# Begin an array. Does nothing.
ZZ   e# Push 3 twice.
[    e# Begin an array. Does nothing.
\^   e# Swap both 3s and push the bitwise XOR. Pushes 0.
__   e# Push two copies.
`    e# Inspect the last copy. Pushes the string "0".
b    e# Convert "0" from base 0 to integer. Pushes 48.
cd   e# Cast 48 to Character, then Double. Pushes 48.0.
gi   e# Apply the sign function, then cast to integer. Pushes 1.
mp   e# Check 1 for primality. Pushes 0.
s    e# Cast the result to string. Pushes the string "0".

e# We now have three elements on the stack: an array, 0, and "0"

t    e# Set the element at index 0 of the array to the string "0".
s    e# Cast the array to string.

e# This pushes the string consisting of the characters
e#     0,'#'C'J'a'm',' qYew::-Yf#:+
e# and
e#     e#'''10111213141516171819203.141592653589793 000-1132
e#
e# When evaluated this does the following:
e#   0,                Push an empty array. Does not affect output.
e#   '#'C'J'a'm','     Push the characters of "#CJam, ".
e#   q                 Read all input from STDIN.
e#   Yew               Push the overlapping slices of length 2.
e#   ::-               Reduce each pair of characters to their difference.
e#   Yf#               Square each difference.
e#   :+                Add the results.
e#   e#…               Comment. Does nothing.

z    e# Zip. This wraps the string on the stack in an array.
{}~  e# Execute an empty block.
~    e# Unwrap the array.
~    e# Evaluate the string.

6
........... ওয়াট
DLosc

দেখে মনে হচ্ছে প্রায় এই ভাষাটি এই সঠিক চ্যালেঞ্জের জন্য তৈরি হয়েছিল। নিস!
ডোমিনো

3
অভিশাপ। আমি ভেবেছিলাম অবশেষে আমি একটি চ্যালেঞ্জ তৈরি করেছি যা সিজেএমকে একটি অসুবিধে করে ফেলবে কারণ এটি প্রায়শই 'প্রাথমিক' চিহ্ন এবং 'দেরী' অক্ষরের মিশ্রণ। তবে নুওও, আপনি আবার এটিকে আবার নষ্ট করবেন ... চিয়ার্স!
সানচিইস

7

হাস্কেল, 152827 95742 91196 83921 77447 71742

a=(.);_ZYXWVUTSRQPONMLKJIHGFEDCBA=("#Haskell, "++)`a`show`a`sum`a`fmap(^2)`a`(tail>>=zipWith(-))`a`fmap fromEnum`a`(""++)

ব্যবহার (দ্রষ্টব্য: "পালাতে হবে):

_ZYXWVUTSRQPONMLKJIHGFEDCBA   "a=(.);_ZYXWVUTSRQPONMLKJIHGFEDCBA=(\"#Haskell, \"++)`a`show`a`sum`a`fmap(^2)`a`(tail>>=zipWith(-))`a`fmap fromEnum`a`(\"\"++)"

"#Haskell, 71742"

আমি ""হ্যাস্কেল দোভাষীকে প্রকারগুলি সনাক্ত করতে সহায়তা করতে ইনপুট স্ট্রিংয়ে খালি স্ট্রিংটি প্রিপেন্ড করি । এটি বিন্যাস ব্যতীত ব্যর্থতা ছাড়াই কোডটি বহুত্বপূর্ণ। বাকিটি যথারীতি ব্যবসা: প্রতিটি চরিত্রকে ascii এ ম্যাপ করুন, প্রতিবেশী পার্থক্যের তালিকা তৈরি করুন, বর্গাকার, যোগফল এবং ভাষার নাম প্রিপেন্ড করুন।


6

> <>, 30227

0&ii:0(?v:@-:*&+&20.
'#><>, '<;n&oooooo

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

কখনই নয় সম্পূর্ণরূপে অপ্টিমাইজ কিন্তু লাগে পূর্ণ আদেশগুলিতে> <> এর (অন্তত ASCII অক্ষর পরিপ্রেক্ষিতে) আপেক্ষিক নৈকট্য কিছু সুবিধা। আমি সহজেই ইনপুট হিসাবে নিউলাইনটি জমা দিতে পারিনি, তাই আমি পাইথ স্কোর চেকারটি ব্যবহার করেছি, তবে এটি আমার ব্যবহার করা এলোমেলো পরীক্ষার মামলার সাথে মেলে তাই এটির ক্ষেত্রে এটি ঠিক থাকতে হবে।

এখানে 30353 এর স্কোর সহ একটি রয়েছে (এটি একটি লাইন হওয়ার পরে যা সঠিক হওয়া উচিত):

0&l1=66+*77++0.$:@-:*&+&10.' ,><>#'oooooo&n;

ভাল, একটি প্রতিযোগিতামূলক এন্ট্রি> <>!
সানচিইস

5

জাভা, 66465 65506 62434

আশ্চর্যজনকভাবে সংক্ষিপ্ত। স্ট্রিংয়ের পরিবর্তে একটি চর অ্যারে গ্রহণ করে।

ABCD->{int A98=0,GFEDCBA=1,A987;for(;GFEDCBA<ABCD.length;A98=A98+(A987=ABCD[GFEDCBA]-ABCD[GFEDCBA++-1])*A987-0);return"#Java, "+A98;}

আমি সেরা প্রোগ্রামের নাম পরিবর্তন করতে একটি প্রোগ্রাম ব্যবহার করেছি।


আপনি কীভাবে এটি কোনও প্রোগ্রামে ব্যবহার করবেন? (আমি এখনও জাভা 8 বৈশিষ্ট্যের সাথে পুরোপুরি পরিচিত নই)
অদিতসু


ওহ, সুতরাং আপনাকে এটির জন্য লক্ষ্যমাত্রামূলক ইন্টারফেসাল সংজ্ঞা দিতে হবে ... ঠিক প্রথম-শ্রেণীর অবজেক্ট নয়।
অদিতসু

@ অ্যাডিটসু আপনি চাইলে ফাংশন <চর [], স্ট্রিং >ও ব্যবহার করতে পারেন।
TheNumberOne

ওহ, আমি ... ((Function<char[],String>) ABCD->{…}).apply(…)ধন্যবাদ। প্রকার প্রসঙ্গ ছাড়াই এই ল্যাম্বডাসগুলি বেশ অসম্পূর্ণ বলে মনে হচ্ছে।
অদিতসু

4

কে 5, 25478

"#K5, ",$+/1_{x*x}'-':

খুব সহজ সমাধান। এটি এমন একটি ফাংশন যা তার ইনপুটটিকে স্ট্রিংয়ের মাধ্যমে নেয়।


1
@ টিমমিড ফিক্সড !!
kirbyfan64sos

4

উইন্ডোজ পাওয়ারশেল আইএসই হোস্ট, 62978 63894 67960 77050

PARAM($4)($4.LENGTH-2)..0|foreach{$9=+$4[$_]-$4[$_+1];$0+=$9*$9};'#'+$HOST.NAME+', '+$0

সম্পাদনা - $Aভেরিয়েবল থেকে মুক্তি পেয়ে পরিবর্তে স্ট্রিংয়ের মাধ্যমে পিছনের দিকে গণনা করে এবং কিছু কীওয়ার্ডকে সিএপিএসে রূপান্তর করে কিছু পয়েন্ট সংরক্ষণ করা হয়েছে

সম্পাদনা 2 - এর $($HOST.NAME)পরিবর্তে আরও কিছু পয়েন্ট সংরক্ষণ করেPowerShell

সম্পাদনা 3 - পরিবর্তনশীল নামগুলি অদলবদল করে এবং আউটপুট কীভাবে উত্পন্ন হবে তা পরিবর্তন করে আরও কিছু পয়েন্ট সংরক্ষণ করেছে।

সংখ্যার সাথে নামযুক্ত ভেরিয়েবলগুলি ব্যবহার করে, কারণ তারা "আরও নিকটে" $তাই আমাদের জরিমানা কম।

নিয়মিত গল্ফিং কৌশল ব্যবহার না করা আকর্ষণীয় । উদাহরণস্বরূপ, |%{$22534, যখন |foreach{$এটি কেবল 8718।

কৌশলগুলি পরিবর্তন না করে এটি সম্ভবত সর্বোত্তমের কাছাকাছি।


1
এই ছিল ঠিক কি আমি জন্য প্রত্যাশী হয়। চিয়ার্স!
সানচিইস

4

ম্যাটল্যাব, 19214 39748 39444 38785 37593

@(A9876543210)sprintf('#MATLAB, %d',diff(A9876543210)*diff(A9876543210'))

পার্থক্য গণনা আরও কমাতে লুই মেন্ডোকে ধন্যবাদ!

ইনপুট ভেরিয়েবলের নামটি পরিবর্তন করে শব্দের গণনা হ্রাস করার জন্য নাম্বোনকে ধন্যবাদ!

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

  1. একটি অনামী ফাংশন ঘোষণা করে যা ansম্যাটল্যাবে ডিফল্ট ভেরিয়েবলে সঞ্চিত থাকে
  2. ফাংশনটি স্ট্রিং করা একটি স্ট্রিং নেয় এবং স্ট্রিংয়ের A9876543210স্কোয়ার প্রতিবেশী পার্থক্যগুলির সমষ্টি প্রিন্ট করে।
  3. diffঅ্যারেতে জোড়া পার্শ্ববর্তী পার্থক্য খুঁজে পায় এবং একটি অ্যারের উত্পাদন করে length(A9876543210)-1diffস্ট্রিং অ্যারে ব্যবহার করে এটি এমন একটি অ্যারেতে কাস্ট হয়ে যায় doubleযেখানে প্রতিটি অক্ষরের এএসসিআইআই কোড উত্পন্ন হয় এবং পরপর জোড়াগুলির পার্থক্য অন্য অ্যারেতে ফলাফল করে।
  4. বর্গক্ষেত্রের পার্থক্যের যোগফল খুঁজতে, আপনি কেবল নিজেরাই স্থানান্তরিত হয়ে এই পার্থক্যের অ্যারের বিন্দু পণ্যটি নিয়ে যান। করায় diff(A9876543210)'আসলে তুলনায় আরও শব্দ তৈরি হয়েছিল A9876543210.'(ধন্যবাদ লুইস মেন্ডো!)
  5. ফলাফলটি স্ক্রিনে মুদ্রিত হয়।

নামবিহীন ফাংশনগুলিকে অনুমতি দেওয়ার জন্য পিপিসিজিতে এটি স্বাভাবিক। সুতরাং আপনি মুছে ফেলতে পারেনA=
লুইস মেন্ডো

এছাড়াও, norm(diff(B))^2সংক্ষিপ্ত
লুইস মেন্ডো

@ লুইস মেন্ডো - চেষ্টা করেছেন। এটি বৈজ্ঞানিক স্বরলিপি প্রিন্ট করে এবং এর প্রতি সম্মান দেয় না %d
রায়রিং - মনিকা

আপনি Bচলক নাম হিসাবে কেন ব্যবহার করবেন ? A=@(A)...স্ক্যাপড হওয়ায় বৈধ ম্যাটল্যাব A
সানচিইস

3
এ -> এ 9876543210
TheNumberOne

4

কিউব্যাসিক, 38140

শীট সিনট্যাক্সের জন্য হ্যাঁ

LINE INPUT A9876543210$:AAA=ASC(A9876543210$):WHILE A<LEN(A9876543210$):AA9876543210=AAA:A=1+A:AAA=ASC(MID$(A9876543210$,A)):A98765432100=A98765432100+(AA9876543210-AAA)*(AA9876543210-AAA):WEND:?"QBasic,";A98765432100

( কিউবি 64 এর সাথে পরীক্ষিত ))

এটি একটি সম্পূর্ণ প্রোগ্রাম যা স্ট্রিংকে ইনপুট দেয় এবং উত্তরকে আউটপুট করে। এখানে একমাত্র সীমাবদ্ধতা হ'ল প্রোগ্রামটি মাল্টিলাইন ইনপুট নিতে পারে না ( LINE INPUTযতক্ষণ না এটি একক লাইন যতক্ষণ কোনও কিছু পরিচালনা করতে পারে)।

Deobfuscated:

LINE INPUT line$
b=ASC(line$)
WHILE i<LEN(line$)
    a=b
    i=i+1
    b=ASC(MID$(line$,i))
    score=score+(a-b)*(a-b)
WEND
PRINT "#QBasic,"; score

সুবিধার্থে, একটি বহু-চরিত্রের স্ট্রিংটি পাস করা ASCপ্রথম অক্ষরের ASCII মান দেয়। এছাড়াও সুবিধামত, সংখ্যার ভেরিয়েবলগুলি স্বয়ংক্রিয়ভাবে শূন্য থেকে শুরু হয়।


আমি এর আগে কিউব্যাসিকটিতে কখনই কোডিং করি নি, তাই যদি আমি ভুল হয়ে থাকি তবে আমাকে ক্ষমা করে দিন, তবে কিছু অতিরিক্ত পয়েন্টগুলি সংরক্ষণ করতে বড় হাতের অক্ষর দিয়ে পরিবর্তনগুলি প্রতিস্থাপন করা সম্ভব হবে কি?
ASCIIThenANSI

@DLosc আহ, ঠিক আছে। আমি প্রকৃত প্রোগ্রাম হিসাবে ডিওফাস্কেট সংস্করণটি পড়ছিলাম। : |
ASCIIThenANSI

3

পাইথন 2, 91026

lambda A:"#Python 2, "+`sum((ord(A9876543210)-ord(A98765432100))**2for A9876543210,A98765432100 in zip(A,A[1:]))`

একটি অনামী ফাংশন সংজ্ঞায়িত করে যা স্ট্রিং নেয় এবং স্কোরটি দেয়। এটি অনলাইনে চেষ্টা করুন

এই অধিকাংশই খুবই সহজবোধ্য কার্মিক বাস্তবায়ন হল: zip Aদিয়ে A[1:]চিঠি যুগলের জানতে-- তাদের বিয়োগ ordগুলি, বর্গাকার, এবং জেনারেটরের অভিব্যক্তি সঙ্গে সমষ্টি।

মান্য যে জেনারেটরের অভিব্যক্তি ভিতরে দুটি ভেরিয়েবল শুধুমাত্র কখনও নিম্নলিখিত অক্ষরগুলি দ্বারা অনুসরণ করা হয়: ), ,, এবং স্থান। এই তিনটিরই খুব কম ASCII মান রয়েছে, সুতরাং এটি প্রতিটি ভেরিয়েবলকে যতটা সম্ভব কম-ASCII- মূল্যবান একটি অক্ষর দিয়ে সমাপ্ত করার জন্য আমাদের পরামর্শ দেয়। পাইথনের একটি পরিবর্তনশীল শেষ করতে পারে এমন সর্বনিম্ন চরিত্রটি 0। তদুপরি, প্রতিটি সুযোগের জন্য আমরা একটি বৃহত লাফকে দুটি ছোট ছোট জাম্পে বিভক্ত করতে হবে স্কোর কমিয়ে দেবে: A0ব্যয় 289, তবে A90এটি কেবল 145 এবং A9876543210একটি পাল্ট্রি 73।

(এই পদ্ধতিটি ল্যাম্বডা ভেরিয়েবলকে সহায়তা করে নিA , সম্ভবত এটির কারণেই এটি [ঘটেছে))


3

জেএসফাক, 144420642

এটি থেকে তৈরি করুন:

t=arguments[0];n=0;for(u=1;u<t.length;++u)n+=(f=t.charCodeAt(u)-t.charCodeAt(u-1))*f;return'#JSFuck, '+n

এটি জেএসফাক.কম এর ছোট ইনপুট বাক্সে এটি আটকান জেএসফাকে সংকলন করতে। ফলাফলটি একটি 112701 অক্ষরের দীর্ঘ স্ক্রিপ্ট, সুতরাং আমি এটি এখানে রাখতে পারি না। এই স্ক্রিপ্টের শেষ দুটি অক্ষর হ'ল বন্ধনী, তাদের মধ্যে ইনপুট দিন।

...)[+!+[]])('abd')

প্রোগ্রামটি নিজের কম্পিউটারে মূল্যায়নের জন্য প্রায় 20 সেকেন্ড সময় নেয়।


ব্যাখ্যা

আমি এটিতে কাজ করার জন্য আরও সময় পেয়েছি, তাই আমি বসে বসে ভেরিয়েবলের নামগুলি অনুকূল করার চেষ্টা করেছি। তাদের স্কোরের ক্রম অনুসারে এখানে ব্যবহারযোগ্য মূল্যবোধক নামগুলি রয়েছে।

u     ([][[]]+[])[+[]]                    17237
n     ([][[]]+[])[+!+[]]                  17437
f     (![]+[])[+[]]                       18041
t     (!![]+[])[+[]]                      18041
a     (![]+[])[+!+[]]                     18241
r     (!![]+[])[+!+[]]                    18241
d     ([][[]]+[])[!+[]+!+[]]              23405
N     (+[![]]+[])[+[]]                    23669
e     (!![]+[])[!+[]+!+[]+!+[]]           29217
i     ([![]]+[][[]])[+!+[]+[+[]]]         33581
l     (![]+[])[!+[]+!+[]]                 24209
s     (![]+[])[!+[]+!+[]+!+[]]            29217
uu    ([][[]]+[])[+[]]+([][[]]+[])[+[]]   36983

এখানে আমি জাভাস্ক্রিপ্টটি জেএসফাকে অনুবাদ করেছি:

score = 0;
for (u = 1; u < input.length; ++u)
  score += (difference = input.charCodeAt(u) - input.charCodeAt(u-1)) * difference;
return '#JSFuck, ' + score;

আমি জেএসফুক.কম এর অনুবাদককে ঘনিষ্ঠভাবে দেখেছি এবং এর মূল্যায়ন কাজটি কীভাবে কাজ করে তা অনুধাবন করেছি। "ইভাল উত্স" চেক করার সাথে কোডটি একটি স্ব-কার্যকরকারী জেএসফাক ফাংশনে পরিণত হবে। ইনপুট পেতে, তবে, ফাংশন থেকে আমাদের [0] টি আর্গুমেন্ট অ্যাক্সেস করতে হবে। এটি আমাদের চূড়ান্ত জেএস কোড এনেছে ...

t=arguments[0];n=0;for(u=1;u<t.length;++u)n+=(f=t.charCodeAt(u)-t.charCodeAt(u-1))*f;return'#JSFuck, '+n

(যদি আপনি ভাবছেন তবে কেন আমার আগের সংস্করণটির তুলনায় এটি কম স্কোর ছিল, কারণ এটি একটি জেএসফাক প্রোগ্রাম ছিল যে স্ট্রিংটি জেএস হিসাবে মূল্যায়ন করার দরকার ছিল। এটি এই কারণেই আমি এটিকে পোস্টে ছাড়িনি)


আপনার absঅপ্রয়োজনীয়। আমার ধারণা এটি কেবল পার্থক্য তৈরি করতে পারে ... :)
সানচিইস

6
আমি স্কোরটি গুলিয়ে ফেললাম found আপনার স্পেসগুলি সরিয়ে নেওয়া উচিত। বিশেষত যেহেতু আপনার প্রোগ্রামের আউটপুট হওয়া উচিত JSFuck, 102280181
mbomb007

@ সানচিইজস, সত্যিই আমি প্রথমে স্কোয়ার দুটি স্থাপন করতে ভুলে গিয়েছিলাম, যার কারণেই এখানে একটি ম্যাথ.এবস ছিল। ঠিক করবে.
ডোমিনো

@ mbomb007 ওহ, ঠিক আছে, তাহলে খুব ভাল হবে।
ডোমিনো

3

সিজেম, 23663 19389 11547

"#CJam,"32A;clYew[]ULC;;;;::- 0$.*:+

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

কৌশলগতভাবে আরও অক্ষর যুক্ত করে এটিকে প্রায় অবিরামভাবে ধাক্কা দেওয়া যেতে পারে বলে মনে হচ্ছে। তবে আমি মনে করি যে আমি এখানে হ্রাসকারী রিটার্নের পর্যায়ে পৌঁছতে শুরু করেছি, তাই এখনই থামব। উদাহরণস্বরূপ, আমার যেখানে আছে সেখানে আমি ULC;;;সম্পূর্ণ বর্ণমালা পিছনে পিছনে 26 ব্যবহার করতে পারি ;তবে উপকারগুলি আরও কম এবং ছোট হয়।

এখন পর্যন্ত সবচেয়ে বড় ব্যবধানটি আমি রেখেছি প্রাথমিক স্ট্রিংয়ের মধ্যে mএবং এর ,মধ্যে। এ থেকে মুক্তি পাওয়ার জন্য আমি যুক্তিসঙ্গত কিছু পাইনি। আমি নিশ্চিত যে উপায় আছে। তবে আমি যদি এটিকে সীমাবদ্ধ করে রাখি তবে এটি ডেনিসের সমাধানের মতো দেখতে শুরু করবে ...


3

জাভাস্ক্রিপ্ট, 33911

$0123456789ABCDEFGHIJKLMNOPQRS=>/**/('#')+('JAVASCRIPT,')+(" ")+(($)/**/=0,($0123456789ABCDEFGHIJKLMNOPQRS[`split`]``[`map`]/**/(($$,$$$)/**/=>/**/($)/**/=Math[`pow`]/**/($0123456789ABCDEFGHIJKLMNOPQRS[T=`charCodeAt`]/**/($$$)+-($0123456789ABCDEFGHIJKLMNOPQRS[T]/**/(($$$)/**/>=6-5?/**/($$$)+-1:0.)),2)+($))),($))

এটি এখন পর্যন্ত কোড গল্ফের মধ্যে করা সবচেয়ে চতুরতম অপ্টিমাইজেশনগুলির একটি ...

"মন্তব্য স্প্যাম" পরামর্শের জন্য নীলের কাছে প্রপস = পি


আমি মনে করি আপনি /**/উপযুক্ত স্থানে serোকিয়ে 5180 সাশ্রয় করতে পারেন ।
নিল

3

জাভাস্ক্রিপ্ট, 31520

এই সমাধানটি আমার অন্যটির চেয়ে উল্লেখযোগ্যভাবেই হাস্যকর ছিল এবং তাই আমি অনুভব করেছি যে এটির নিজের উত্তরই প্রাপ্য।

A=>/**/(($)/**/=/**/(''),('000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000100000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000100000000000000000000000000000000000000001000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000100000000000000000000000000000000000000001000000000000000000000000000000000000000010000000000000000000000000000000000000000000100000000000000000000000000000000000000100000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000000000000100000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000010/-,+*)(')/**/[`split`]``[`reduce`]/**/(($$,$$$,$$$$)/**/=>/**/($$$)/**/>7.-07?/**/(($)+=/**/((/**/String[`fromCharCode`]/**/)(($$$$)+-($$))),($$$$))/**/:/**/($$)),/**/eval/**/($))

এটি 7306 টি অক্ষর, যার বেশিরভাগই আসল প্রোগ্রামটি সেই 0/1 স্ট্রিংটিতে এনকোড করা হয় এবং বাকিটি কেবল এটি ডিকোড করার জন্য। এটি প্রতিটি '1' বিয়োগের সূচকটি পূর্বের '1' এর সূচক দিয়ে প্রয়োজনীয় অক্ষরের মান পেতে কাজ করে। এরপরে এটি প্রকৃত ফাংশনটির ফলাফল হিসাবে চিহ্নিত হয়, যা সমস্যাটি সমাধান করার জন্য মূলত একটি স্ট্যান্ডার্ড-গল্ফ প্রোগ্রাম (যা কেবলমাত্র প্রায় 105 টি অক্ষর)।


2

আর, 68911 57183 53816 52224

STDIN থেকে স্ট্রিং নেয় এবং এটি কাঁচের মাধ্যমে পূর্ণসংখ্যায় রূপান্তর করে। পৃথক, স্কোয়ার এবং ফলাফলের ভেক্টরের যোগফল। ফলাফলটি স্ট্রিং হিসাবে ফিরে আসে। পরিবর্তনশীল নামের টিপসের জন্য @ নিমিকে ধন্যবাদ।

'&&'=sum;'&&&'=diff;'&&&&'=as.integer;'&&&&&'=charToRaw;'&&&&&&'=readline;'&&&&&&&'=paste;'&&&&&&&'('#R,','&&'((A='&&&'('&&&&'('&&&&&'('&&&&&&'()))))*A))

@ নিমিমি এর জন্য ধন্যবাদ, এটি ছোট রাখার চেষ্টা করে 2 জন আটকে গিয়েছিলেন :)
মিকিটি

2

গণিত, 33552

A=ToExpression;A@ExportString[A@Characters@(**)"001000100010001101001101011000010111010001101000011001010110110101100001011101000110100101100011011000010010110000100000001000100011110000111110010101000110111101010011011101000111001001101001011011100110011101011011001000110010111000100011001001100100000001000100011010010110011001100110011001010111001001100101011011100110001101100101011100110100000001010100011011110100001101101000011000010111001001100001011000110111010001100101011100100100001101101111011001000110010101000000001000110101110100100110"(**),(**)"Bit"(**)]

এই কোডটি একটি নামহীন ফাংশনকে মূল্যায়ন করে যা কোনও ইনপুট স্ট্রিংয়ের "গোলমাল" গণনা করে। এটি এই সত্যটি ব্যবহার করে যে বাইনারি তথ্যগুলির ASCII উপস্থাপনাটি মূলত "নির্বোধ"। আপনি যে বাইনারি ডেটা দেখছেন তা হ'ল স্ট্রিং

"#Mathematica, "<>ToString[#.#&@Differences@ToCharacterCode@#]&

যা নিজে থেকে একটি বৈধ উত্তর হতে পারে, 37848 স্কোর করে।

অন্য সবকিছু

A=ToExpression;A@ExportString[A@Characters@(**)"001..110"(**),(**)"Bit"(**)]

কেবল বাইনারি স্ট্রিংটি ডিকোড করে ম্যাথমেটিকা ​​কোড হিসাবে ব্যাখ্যা করে। মনে রাখবেন যে ম্যাথামেটিকার খালি মন্তব্যটি (**)খুব "লো-শব্দ" এবং আসলে শব্দগুলি থেকে শব্দটি সরিয়ে দেয় "


2

জাভা 8: 117170 100508 99062 98890

লাম্বাডা এক্সপ্রেশন এবং ভেরিয়েবলের ইনলাইন অ্যাসাইনমেন্টের সাহায্যে এই কোডটি কিছুটা ছোট করা যায়।

A->{int B=0,D=0,E=0;char[] C=A.toCharArray();for(;D<C.length-1;)B+=(E=C[D]-C[++D])*E;return"#java, "+B;}

এ -> এ 9876543210; বি -> 12 0123456; সি -> এ; ডি -> এএ; ই ->
12 0123456789

2

জাভা, 129300 128400 110930 106581 105101

B->{int A=0,C=A;char[]Z=B.toCharArray();for(;++C<Z.length;A=A+(Z[C]-Z[C-1])*(Z[C]-Z[C-1]));return\"#Java, \"+A;}

এই চ্যালেঞ্জটি আমাকে সংক্ষিপ্ততম সমাধানের চেয়ে আরও বেশি করে চরিত্রের ব্যবহার এবং অপ্টিমাইজেশনের আরও গভীর চিন্তাভাবনা করেছে। নাম্বার নামিয়ে আনতে আমি কাজ করে যাব।

Bস্ট্রিংটি ফাংশনটিকে প্রতিনিধিত্ব করে এটি এটি একটি ল্যাম্বডা ফাংশন। "এটিকে স্ট্রিং হিসাবে পাস করার সময় উদ্ধৃতিগুলি ( ) এড়িয়ে চলতে ভুলবেন না ।


2

পাইথ, 16391

++C38828542027820dsm^-ChdCed2,Vztz

এখানে ব্যবহৃত নোটের একমাত্র কৌশলটি বেস -২66 এনকোডিং #Pyth,, যার দাম স্ট্রিংয়ের চেয়ে অনেক কম।

++C38828542027820dsm^-ChdCed2,Vztz    Implicit: d=' ', z=input()
                             ,Vztz    Pair each char in the input with its neighbour
                   m                  Map d in the above to:
                      Chd               ASCII code of 1st char
                         Ced            ASCII code of 2nd char
                     -                  Difference between the two
                    ^       2           Squared
                  s                   Take the sum
  C38828542027820                     '#Pyth,'
++               d                    '#Pyth,' + ' ' + result, implicit print

2

এম, 47033 52798

A9876543210(A9876543210) F AA9876543210=2:1:$L(A9876543210) S AAA9876543210=$A($E(A9876543210,AA9876543210-1))-$A($E(A9876543210,AA9876543210))**2+AAA9876543210
    Q "#M, "_AAA9876543210

এটি ব্যবহার করতে, আমাদের উদ্ধৃতিগুলি এবং "পলায়ন" হোয়াইটস্পেস অক্ষরগুলি (যা এমএমপিএস-এ উল্লেখযোগ্য!) এড়াতে হবে:

>$$A9876543210^MYROUTINE("A9876543210(A9876543210)"_$C(9)_"F AA9876543210=2:1:$L(A9876543210) S AAA9876543210=$A($E(A9876543210,AA9876543210-1))-$A($E(A9876543210,AA9876543210))**2+AAA9876543210"_$C(10,9)_"Q ""#M, ""_AAA9876543210")
#M, 47033

মনে রাখবেন যে "এমএমপিএস" "এমএমএমএস" এর একটি বিকল্প নাম - কোনটি সঠিক তা নিয়ে চিকিত্সকদের মধ্যে মতবিরোধ রয়েছে। স্বাভাবিকভাবেই, আমি এখানে সংক্ষিপ্ত বিকল্পটি বেছে নিয়েছি।


আপনার কি এএএএ শুরু করা উচিত নয়?
এসএসএইচ

এছাড়াও অপারেটরের অগ্রাধিকারের অভাবের কারণে আপনি কেবল এস এএএ = $ এ ($ ই (এ, এএ -1)) - $ এ ($ ই (এ, এএ)) ** 2 + এএএ - কম দিতে হবে স্কোর ...
এসএসএইচ

@ এসএসএইচ আমি ফাংশনটি বলার আগে একটি পরিষ্কার প্রতীক টেবিল ধরে নিচ্ছি (যাতে আমার NEWস্টাফ লাগবে না )। সুতরাং আমি যখন AAAA(এখন AAA9876543210) গাণিতিক কাজ শুরু করি তখন এটি জোর হয়ে যায় 0(সম্ভবত এটি কেবল একটি ক্যাচ বাস্তবায়নের বিশদ? আমার বিপরীতে পরীক্ষা করার জন্য কোনও জিটি.এম ইনস্টল নেই)। অপারেটর অগ্রাধিকার জিনিস ভাল কল; খাঁটি বাম থেকে ডান ক্রিয়াকলাপগুলির শর্তাবলী বিবেচনা করতে আমার সর্বদা কষ্ট হয়। (আমি এও ভুলে গেছি যে এম এর
ক্ষতিকারক

নিস! এছাড়াও, বাম থেকে ডান সম্পাদনের কারণে, আপনার ** 2
এসএসএইচ

@ এসএসএইচ ধন্যবাদ, কীভাবে তারা সেখানে gotুকল! আমি যে সংস্করণটি প্রকৃতপক্ষে পরিমাপ করেছি তা এতে নেই, সুতরাং স্কোরটি এখনও একই।
সেনশিন

1

রুবি, 118402

puts "#Ruby, #{a=0;aa=nil;File.read(ARGV[0]).each_byte{|aaa| aa||=aaa;a+=(aaa-aa)**2;aa=aaa};a}"

এটি কমান্ড লাইনের মাধ্যমে কোনও ফাইলে পড়ে ruby diff.rb /path/to/file। উন্নতির জন্য জায়গা রয়েছে এবং এটি এখনই আমি কাজ করছি।


1

সি ++ 166345

void n(){int b=0,c,d;string a;cin >>a;for(c=1;c<a.length();++c){d=(a[c]-a[c-1]);b+=d*d;}cout<<"#C++, "<<b;}

1

পার্ল, 93556

chomp($A=<>);$AAA=$AAAA=0;foreach$AAAAA(split'',$A){$AA=ord($AAAAA);$AAA+=($AAAA-$AA)**2 if($AAAA!=0);$AAAA=$AA}print'#Perl, '.$AAA

আমি এটিকে আরও কিছুটা কেটে নেওয়ার চেষ্টা করব।

দেখা যাচ্ছে যে কোঁকড়ানো ধনুর্বন্ধনী ( {এবং }, ASCII 123 এবং 125) এবং আন্ডারস্কোর ( _, ASCII 95) খুব ব্যয়বহুল, যেহেতু অন্যান্য সমস্ত অক্ষর 30-70 পরিসরের আশেপাশে রয়েছে, এই কারণেই আমি ifযেভাবে করেছি সেভাবে বিন্যাস করেছি এবং কেন আমি $AAAAAপার্লের প্রিয়জনের পরিবর্তে ব্যবহার করছি $_

দুঃখের বিষয়, এগুলির মধ্যে চিহ্ন সহ সমস্ত ভেরিয়েবলগুলি কেবল পঠনযোগ্য, তাই আমি $#এবং এর মতো সংমিশ্রণের সুবিধা নিতে পারি না $$


1

এফ #, 136718 130303

let(A)=Seq.map;
(stdout.Write(Seq.sum(A(fun(AA)->AA*AA)(A((<||)(-))(((Seq.pairwise(A(int)(stdin.ReadToEnd())))))))))

যেখানে \nপরে আছে ;


1

পসিক্স শেল, 172026

{ while IFS= read -N 1 A; do A1=$(printf %d \'"$A");test "$A1" -eq 0 && break;case $A11 in "")A111=0;;*)A111=$((A1-A11));;esac;A11="$A1";A1111=$((A111**2+A1111));done;echo "# POSIX Shell, $A1111";}

খুব খারাপ আমি পাইথ চেকারের (178386) হিসাবে একই ফলাফল পেতে পারি না ...


1. "শেল" কোনও প্রোগ্রামিং ভাষা নয়। এটি বাশের মতো দেখাচ্ছে। ২. আপনি কেবল এসটিডিএন থেকে পড়তে পারেন। উত্স কোড নিজেই পড়ার দরকার নেই।
ডেনিস

@ ডেনিস ধন্যবাদ, সম্পাদিত ... যদিও আমি একই ফলাফল পেতে পারি না, সম্ভবত একটি বাগ এখনও আছে (কমপক্ষে একবার আমি একই ফলাফল পেয়েছি তবে "
সংক্ষেপিত

1

লুয়া, 171078 117896

Golfed:

A=string AA=A.sub AAA=io.read()AAAA=#AAA AAA=AAA..AA(AAA,AAAA,AAAA)AAAAA=0 AAAAAA=A.byte for AAAAAAA=1,AAAA do AAAAAAAA=AAAAAA(AA(AAA,AAAAAAA,AAAAAAA))-AAAAAA(AA(AAA,AAAAAAA+1,AAAAAAA+1))AAAAA=AAAAA+AAAAAAAA*AAAAAAAA end print(AAAAA)

Ungolfed:

A=string 
AA=A.sub 
AAA=io.read()
AAAA=#AAA 
AAA=AAA..AA(AAA,AAAA,AAAA)
AAAAA=0 
AAAAAA=A.byte 
for AAAAAAA=1,AAAA do 
    AAAAAAAA=AAAAAA(AA(AAA,AAAAAAA,AAAAAAA))-AAAAAA(AA(AAA,AAAAAAA+1,AAAAAAA+1))
    AAAAA=AAAAA+AAAAAAAA*AAAAAAAA 
end 

print(AAAAA)

0

সি ++, 49031

একটি সি ++ ম্যাক্রো যা একটি সি-স্ট্রিং নেয় এবং ফলাফলটি স্ট্যান্ডার্ড আউটপুটে লিখে দেয়

<::>(auto(A))<%long(AAA)=0,AA=A<:0:>;while(*++A)<%AAA+=(*A-AA)*(*A-AA);AA=A<:0:>;%>cout<<"#C++, "<<AAA;%>

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


-3

সি ++, ৫

    #include <iostream>
    #include <string>
    #include <cmath>
    using namespace std;

    void convertToASCII(string letter)
    {
        int count = 0;
        int ans = 0;
        int *diff = new int[]; //dynamic array

        for(int i=0; i<letter.length(); i++)
        {
            char x = letter[i]; //letter.at(i);

            if(i!=0){
                diff[i-1] = int(x)- int(letter[i-1]);
                count++;
            }
        }

        for(int j=0; j<count; j++){
            ans += pow(diff[j], 2.0);
        }

        cout << "#C++, " << ans << endl;
    }

    int main()
    {
        string plainText;
        cout << "Enter text: ";
        getline(cin, plainText);
        convertToASCII(plainText);
        system ("pause");
        return 0;
    }

7
প্রোগ্রামিং ধাঁধা এবং কোড গল্ফ স্বাগতম! এটি একটি বৈধ উত্তর, তবে এই চ্যালেঞ্জটির জন্য আপনার স্কোরটি আপনার প্রোগ্রামটির পাঠ্যক্রমটি প্রোগ্রামের মাধ্যমে চালিত হওয়া উচিত। আপনার এই স্কোরটি যথাসম্ভব হ্রাস করার চেষ্টা করা উচিত। আপনি কীভাবে আপনার কোডটি সংক্ষিপ্ত করতে এবং আপনার স্কোরকে কমিয়ে দিতে পারেন তা দেখতে এই পৃষ্ঠাগুলির টিপসগুলি দিয়ে দেখার চেষ্টা করুন ।
ETH প্রোডাকশনগুলি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.