বিভিন্ন প্রিন্টার ব্যবহার করে 1 থেকে 15 মুদ্রণ করুন


22

একটি বহুমুখী পূর্ণসংখ্যার প্রিন্টার তৈরি করা দুর্দান্ত এবং সব কিছু, তবে একটি একক কোড লেখা যা প্রচুর বিভিন্ন সংখ্যক মুদ্রণ করে তা কষ্টকর। এমন কোনও স্ক্রিপ্ট তৈরি করা সহজ হবে যা কোনও সংখ্যার আউটপুট দেয়, তবে আপনাকে পরবর্তী নম্বর পাওয়ার জন্য একটি নতুন স্ক্রিপ্ট দেয়?

চ্যালেঞ্জ:

এমন একটি কোড লিখুন যা একটি একক পূর্ণসংখ্যার Nএবং কার্যকর করার যোগ্য কোডটি দেয়। পরবর্তী কোডের আউটপুট N+1এবং এমন একটি কোড থাকা উচিত যা আউটপুট দিতে পারে N+2। আপনি না পৌঁছা পর্যন্ত এই পথ চালিয়ে যান N = 15। (শেষ মুদ্রিত নম্বর 15 হওয়া উচিত)।

নিয়মাবলী:

  • কোনও ইনপুট নেই (ধরুন ইনপুটটি খালি)।
  • সম্পূর্ণ প্রোগ্রাম বা ফাংশন বা অন্যান্য সুবিধাজনক বিন্যাস অনুমোদিত allowed
  • প্রথম কোড আউটপুট করা উচিত 1
  • আপনি নেতৃস্থানীয় শূন্যগুলি আউটপুট করতে পারবেন না। অর্থাত আপনি মুদ্রণ করতে পারে না 01জন্য 1
  • আউটপুট অবশ্যই ফর্ম্যাটে থাকতে হবে N, Code_for_N+1। নোট করুন আউটপুটটি কমা এবং একক স্থান দ্বারা পৃথক করা হয়েছে। কোড N+1কোন পার্শ্ববর্তী উদ্ধৃতি চিহ্ন রয়েছে। N , Code_for_N+1স্বীকৃত হয় না (কমা সামনে স্থান)। চলমান নিউলাইনগুলি ঠিক আছে।
  • আউটপুট এর প্রথম অক্ষর (গুলি) হতে হবে সংখ্যা। (কোনও শীর্ষস্থানীয় স্থান নেই, বা ans = N)।
  • মুদ্রিত নম্বরটি পরবর্তী কোডের অংশ হওয়া উচিত নয় (কোডটিতে এই নম্বরটি থাকতে পারে তবে আপনি কোডের অংশ হিসাবে আউটপুট নম্বরটি নিতে পারবেন না)
    • উদাহরণ: জন্য আউটপুট N=2হতে পারে: 2, printer 2। এই ক্ষেত্রে, printer 2জন্য কোড N=3। আপনি পুরো আউটপুটটি ব্যবহার করতে পারবেন না: 2, printer 2কোড হিসাবে N=3
  • স্ক্রিপ্টগুলি বিভিন্ন ভাষায় থাকতে পারে
  • ডেটাটাইপগুলি অপ্রাসঙ্গিক (সংখ্যাটি একটি স্ট্রিং হতে পারে), তবে এটি কোনও কিছুর দ্বারা আবদ্ধ হতে পারে না (উদ্ধৃতি চিহ্ন, প্রথম বন্ধনী ইত্যাদি)।
  • এর জন্য যদি কোনও কোড আউটপুট করা থাকে N=15তবে অবশ্যই এটি মুদ্রণ করতে হবে STOP!(বোনাস দেখুন), বা কোনও কিছু মুদ্রণ করবেন না (এমনকি কোনও স্থান বা নিউলাইনও নয়)।
    • এর জন্য কোড N=15ক্রাশ করতে পারে না (তবে এসটিডিআরআর থেকে আউটপুট দেওয়া ঠিক আছে)।
    • N=15প্রিন্টের জন্য আউটপুট কোড 16বা অন্য কোনও কিছুর (বোনাস কেস ব্যতীত) আপনাকে অযোগ্য ঘোষণা করা হয় ।
  • কুইন অপারেটরগুলিতে নির্মিত অনুমোদিত নয় are
  • ফাইল সিস্টেমের মাধ্যমে উত্স ফাইলটিতে অ্যাক্সেসের অনুমতি নেই।

বোনাস:

-10 বাইটস যদি 15 প্রিন্ট করে যে কোডটি এমন একটি কোডও তৈরি করে যা " STOP!" প্রিন্ট করে

পাইথন সিনট্যাক্স ব্যবহারের উদাহরণ: (অবশ্যই, এগুলি কেবল নির্বাচিত পূর্ণসংখ্যার জন্য কাজ করবে, 1 থেকে 15 পর্যন্ত নয় from)

N = 1
print "1, print 2"
1, print 2

---
N = 15
print 15
15

---
N = 15   (Qualifies for the -10 bytes bonus)
print "15, print 'STOP!'"
15, print 'STOP!'

print 'STOP!'
STOP!

----

N = 15   (Qualifies for the -10 bytes bonus)
print "15, disp('STOP!')"
15, disp('STOP!')        (disp('STOP!') outputs STOP! in MATLAB)

----
N = 15   (This one is not OK. The submission is disqualified)
print "15, print 16"
15, print 16

স্ট্যান্ডার্ড গল্ফিং বিধি প্রয়োগ! সবচেয়ে ছোট কোড (এন = 1 এর জন্য) বাইট জিতে!


সুতরাং, বলুন, f=>f+""অবৈধ হবে? ( f+""ফাংশনটির নির্মাণ কোডটি দেয়।)
কনর ও'ব্রায়ান

@ সিওওবি এটি ছাড়াই, কাজটি অর্জন করা কি সম্ভব ...
নিকেল

@ এনিকাএল এটি ইতিমধ্যে সম্পন্ন হয়েছে, কমপক্ষে জেএস উত্তরে
কনর

1
@ সিওওবি ... কার্যকরভাবে: ডি
নিকেল

নিয়মগুলি বিভ্রান্তিকর, আমি কি কিছু আউটপুট করতে পারি 14, print(14+1)বা না?
nyuszika7h

উত্তর:


39

পাইথ + ///, 15 বাইট - 10 = 5

pPt`S15", STOP!

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, STOP!পাইথের এই মুদ্রণগুলি range(1,15+1)প্রারম্ভ এবং শেষ বন্ধনীগুলি সরিয়ে এবং এলোমেলো করে এবং সঙ্গে সঙ্গে এটি ", থামুন!" পরে মুদ্রণ করে।

পরবর্তী চৌদ্দটি প্রোগ্রাম /// এ রয়েছে, যা সরাসরি সমস্ত প্রোগ্রামকে আউটপুট করে যা এতে নেই /বা থাকে না \। সুতরাং দ্বিতীয় প্রোগ্রাম

2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15

দেয় 2এবং তৃতীয় প্রোগ্রাম 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15। পেনাল্টিমেট প্রোগ্রাম,, 15, STOP!প্রিন্ট করে 15, STOP!, তাই শেষ প্রোগ্রামটি ঠিক STOP!


3
নির্লজ্জ. আমি এটা পছন্দ করি. :)
মার্টিন এন্ডার

না catএকটি ভাষা হিসেবে গণনা?
ব্যবহারকারী 253751

@ মিমিবিস catএকটি প্রাথমিক পরীক্ষা করে না, তাই না।
user48538

1
# 2 এবং পরবর্তী প্রোগ্রামগুলি পিএইচপি-তেও কাজ করে। :)
ইলমারি করোনেন

31

জাভাস্ক্রিপ্ট, 131238 - 10 = 131228 বাইট

নিষ্পাপ দৃষ্টিভঙ্গি প্রত্যাশার চেয়েও খারাপ হয়ে উঠল। অন্ধকারে আমার এটি আশা করা উচিত ছিল। তবে আমি ভেবেছিলাম এটি যেভাবেই ভাগ করে নেব। এখানে সম্পূর্ণ কোড

ধারণা: Iteratively পলায়ন এবং যোগ N-1, ...

alert("14,alert(\"15, alert(\\\"STOP!\\\")\")")

7
আমি মনে করি এটি এখন পর্যন্ত যে কোনও পিপিসি উত্তরের সর্বাধিক ব্যাকস্ল্যাশ।
lirtosiast

1
আমি স্বীকার করি যে
এটির

19
হাহা, এটি -10 অনেক সাহায্য করে: ডি
নিকেল 18


আপনি কোনও বোনাস না দিয়ে কিছু বাইট সংরক্ষণ করতে পারেন।
আর

8

সিজেম, 26 25 24 বাইট

1{", "2$)@"_~"](_F<@*}_~

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

পরবর্তী প্রোগ্রামগুলিতে কেবল প্রথম সংখ্যাটি বাড়ানো থাকে। এটি 16 বার প্রোগ্রাম চালায়।


বা একই স্কোর বোনাস সহ:

1{", "\2$)_G<\@`+"_~"+"STOP!"`?}_~

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

পরবর্তী প্রোগ্রামগুলিতে কেবল প্রথম সংখ্যাটি বাড়ানো থাকে। এটি 16 বার প্রোগ্রাম চালায়।

বোনাসের বিকল্প সমাধান:

1{", "\2$)Gmd@`+"_~"+"STOP!"`\?}_~

2
@ ফ্রাইআমডেজিগম্যান সিজাম.ট্রিটোনলাইন.ট.এই প্রোগ্রামটি এনকোড করতে বেস 64৪ ব্যবহার করে, যা মন্তব্যে পার্মালিঙ্কগুলি পোস্ট করা কিছুটা সহজ করে তোলে। </selfpromotion>
ডেনিস

@ ডেনিস ধন্যবাদ, এটি কিছুটা মাথা ব্যথার কারণ ছিল: পি দেখে মনে হচ্ছে মার্টিন তার নিজের মতোই লিখেছেন।
FryAmTheEggman

@ ফ্রাইআম দ্য এজিগম্যান কেবল আপনার লিঙ্কটি দেখার পরেই, সুতরাং পরামর্শের জন্য ধন্যবাদ। ;)
মার্টিন এন্ডার

7

জাভাস্ক্রিপ্ট (ES6), 62 61 বাইট - 10 বোনাস = 51 স্কোর

_=>"1, "+(f=n=>`_=>"`+(n<16?n+`, "+(${f(n+1)})`:`STOP!"`))(2)

ব্যাখ্যা

এমন একটি সমাধান যা এটির নিজস্ব উত্স কোডটি পড়ে না এবং এটি হাস্যকরভাবে দীর্ঘও নয়।

প্রথম প্রোগ্রামটি 15 টি অন্যান্য সমস্ত প্রোগ্রাম তৈরি করে এবং পুনরাবৃত্তির ক্রিয়া ব্যবহার করে একে অপরের অভ্যন্তরে বাসা বেঁধে দেয়। আমি স্ট্রিংগুলির পরিবর্তে ফাংশনগুলি নিজেরাই বাসা বাঁধে (যা পরে আউটপুট চলাকালীন স্ট্রিংগুলিতে ফেলে দেওয়া হয়) বাছাই করে ব্যাকস্ল্যাশ ইস্যুটি পেতে পারি।

_=>
  "1, "                // print the first number
  +(f=n=>`_=>"`+(      // f = recursive function for printing program N
    n<16?              // for programs 2 - 15:
      n+`, "+(${       // add N to the output of the nested function
        f(n+1)         // nest the code of program N + 1
      })`
    :`STOP!"`          // program 16 just outputs "STOP!" for the bonus
  ))(2)                // start from program 2

পরীক্ষা


1
ব্যবহার করছেন না জন্য +1 জাভাস্ক্রিপ্ট এর বিল্ট-ইন (quining জন্য ধূসর এলাকা) একটি ফাংশন লাশ পাবার বৈশিষ্ট্য
Aᴄʜᴇʀᴏɴғᴀɪʟ

2
@ ক্যালডোডেসিটি ফাংশনটির "" + (n=>m)দেহ পাওয়ার জন্য কীভাবে গণনা করা হয় না n=>m?
নিল

@ নীল আসলে আপনি এটি গণনা করেছেন ঠিক - আমি এড়িয়ে যাব যেহেতু আমি কেবল প্রথম প্রোগ্রামটি
দেখছিলাম

কোথায় গেল সব পিছনে !?
নুডল

5

মতলব, 226 212 - 10 = 202 বাইট

কয়েকটা বাইটের জন্য @ স্টিভিগ্রিফিনকে ধন্যবাদ =)

'awFjw|DWFw1:2DVFw1;Cnwm2Dro)WG:::DwF0\]XY*0Dnu|nDwFdw~v;|}{1W6B?2505)05<B5W4:5V5<B5>B5V6B500fDnwmDmr|y1w2';n=ans;N=n(1);M=n(2:end);if N>111;n='STOP!';else;n=[num2str(N-96),', ',39,N+1,M,39,59,M-9,''];end;disp(n)

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

* বেশ নয়: প্রথম বাইট হ'ল কাউন্টার যা প্রতিটি পুনরাবৃত্তিতে বাড়ানো দরকার।

স্ট্রিং সহ কুইন ট্রিকটি নির্লজ্জভাবে এখান থেকে চুরি হয়েছিল

'awFjw|Dro)w1:26B?G:>DwF0\}xy*0Dnu|nDwFdw~v;|}{1w1:26B?2505)05<B5w1:24:5w1;Cnwm25<B5>B5w1;Cnwm26B500fDnwmDmr|y1w2';
n=ans;if n(1)-96>15;n='Stop!';else;n=[num2str(n(1)-96),', ',39,n(1)+1,n(2:end),39,59,n(2:end)-9,''];end;disp(n)

সিকোয়েন্সের শেষ কয়েকটি লাইনটি কনসোল থেকে অনুলিপি করেছে:

>> 'mwFjw|DWFw1:2DVFw1;Cnwm2Dro)WG:::DwF0\]XY*0Dnu|nDwFdw~v;|}{1W6B?2505)05<B5W4:5V5<B5>B5V6B500fDnwmDmr|y1w2';n=ans;N=n(1);M=n(2:end);if N>111;n='STOP!';else;n=[num2str(N-96),', ',39,N+1,M,39,59,M-9,''];end;disp(n)
13, 'nwFjw|DWFw1:2DVFw1;Cnwm2Dro)WG:::DwF0\]XY*0Dnu|nDwFdw~v;|}{1W6B?2505)05<B5W4:5V5<B5>B5V6B500fDnwmDmr|y1w2';n=ans;N=n(1);M=n(2:end);if N>111;n='STOP!';else;n=[num2str(N-96),', ',39,N+1,M,39,59,M-9,''];end;disp(n)
>> 'nwFjw|DWFw1:2DVFw1;Cnwm2Dro)WG:::DwF0\]XY*0Dnu|nDwFdw~v;|}{1W6B?2505)05<B5W4:5V5<B5>B5V6B500fDnwmDmr|y1w2';n=ans;N=n(1);M=n(2:end);if N>111;n='STOP!';else;n=[num2str(N-96),', ',39,N+1,M,39,59,M-9,''];end;disp(n)
14, 'owFjw|DWFw1:2DVFw1;Cnwm2Dro)WG:::DwF0\]XY*0Dnu|nDwFdw~v;|}{1W6B?2505)05<B5W4:5V5<B5>B5V6B500fDnwmDmr|y1w2';n=ans;N=n(1);M=n(2:end);if N>111;n='STOP!';else;n=[num2str(N-96),', ',39,N+1,M,39,59,M-9,''];end;disp(n)
>> 'owFjw|DWFw1:2DVFw1;Cnwm2Dro)WG:::DwF0\]XY*0Dnu|nDwFdw~v;|}{1W6B?2505)05<B5W4:5V5<B5>B5V6B500fDnwmDmr|y1w2';n=ans;N=n(1);M=n(2:end);if N>111;n='STOP!';else;n=[num2str(N-96),', ',39,N+1,M,39,59,M-9,''];end;disp(n)
15, 'pwFjw|DWFw1:2DVFw1;Cnwm2Dro)WG:::DwF0\]XY*0Dnu|nDwFdw~v;|}{1W6B?2505)05<B5W4:5V5<B5>B5V6B500fDnwmDmr|y1w2';n=ans;N=n(1);M=n(2:end);if N>111;n='STOP!';else;n=[num2str(N-96),', ',39,N+1,M,39,59,M-9,''];end;disp(n)
>> 'pwFjw|DWFw1:2DVFw1;Cnwm2Dro)WG:::DwF0\]XY*0Dnu|nDwFdw~v;|}{1W6B?2505)05<B5W4:5V5<B5>B5V6B500fDnwmDmr|y1w2';n=ans;N=n(1);M=n(2:end);if N>111;n='STOP!';else;n=[num2str(N-96),', ',39,N+1,M,39,59,M-9,''];end;disp(n)
STOP!

5

জাভাস্ক্রিপ্ট, 50 47 44 42 44 * বাইট

a=_=>(x=1)+(x<15?", a="+a:"").replace(x,x+1)

এটি এমন একটি ফাংশন যা তার নিজের দেহটি বের করে (ন্যায়বিচারের a) এবং এতে প্রতিস্থাপন করে। স্পষ্টভাবে একটি কুইন অপারেটর না হয়ে যদিও জাভাস্ক্রিপ্টের একটি অন্তর্নির্মিত বৈশিষ্ট্যটি ফাংশন বডিটি পাওয়া (যদি এটি অবৈধ হয় তবে উত্তরটি সরিয়ে ফেলবে)।

a=_=>(x=1)+(x<15?", a="+a:"").replace(x,x+1);
alert(a());

যদি এটি এম্বেড থাকা অবস্থায় সঠিকভাবে কাজ না করে (কারণ আমার পক্ষে এটি হয় না), আপনি সেখানে একটি উদাহরণ দেখতে পারেন ।


* - দেখে মনে হচ্ছে স্নিপেটটি ফল ছাড়াই a=আরও উত্পাদন করে , আরও কলগুলি অসম্ভব করে তোলে


1
কীভাবে "ফাংশন বডি পাওয়ার জন্য অন্তর্নির্মিত বৈশিষ্ট্য" কুইন অপারেটরের মতো নয়? আমি এটি অবৈধ বলছি না, আমি কেবল ভাবছি পার্থক্য কী?
স্টিভি গ্রিফিন

আমি শুধু একটি নিয়ে কাজ করছিলাম। o_o আপনি করতে পারবেন না .replace(x++,x)?
কনর ও'ব্রায়ান

3
@ স্টেভি গ্রিফিন ওনস কুইনিংয়ের জন্য তৈরি করা হয়েছে, অন্যটি বৈধ বৈশিষ্ট্য।
কনর ওব্রায়ান

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

নেই a=_=>(x=1)+(x<15?`, ${a}`:"").replace(x,x+1)কাজ করে?
কনর ওব্রায়ান

5

পাইথন 2.7.10, 196 92 - 10 = 82 বাইট

লীগ এখন কোন !!! এই মজা ছিল। এখন অনেক খাটো। : P: P

n=1;a='n=%d;a=%r;print n,a%%(n+1,a)if n!=15else"STOP!"';print n,a%(n+1,a)if n!=15else"STOP!"

ব্যাখ্যা:

আমি এটি দিয়ে শুরু করেছি:

a='a=%r;print a%%a';print a%a

এটি কেবল একটি সরল কুইন। এটি একটি কাউন্টার যুক্ত করে যুক্ত করা হয়েছে:

n=1;a='n=%d;a=%r;print n,a%%(n+1,a)';print n,a%(n+1,a)

nএকটি পাল্টা পরিবর্তনশীল যা শুরুতে মুদ্রিত হয়। তারপরে যখন এটি n=অংশটি মুদ্রণ করে তখন এটি বিকল্পটির বিকল্প n+1হয় %d। সুতরাং এখান থেকে এটি অসীম গণনা করা হবে।

এবং এখানে চূড়ান্ত সংস্করণ। এটি 15 এ থামার জন্য একটি আইফোন যুক্ত করে এবং "স্টপ!" যেমন.

n=1;a='n=%d;a=%r;print n,a%%(n+1,a)if n!=15else"STOP!"';print n,a%(n+1,a)if n!=15else"STOP!"

পুরানো কোড:

a= ['if num==15:print"STOP!!!";exit()','print num','print"a=",a','print"num=",num+1', 'for s in a:print s']
num= 1
print num
if num==15:print"STOP!!!";exit()
print"a=",a
print"num=",num+1
for s in a:print s

কখনও জিততে যাচ্ছি না, তবে মজা করছি। : পি এখন অনেক খাটো, যদিও আমি এখনও একটি সুযোগ দাঁড়াচ্ছি না। : P: P


কি দারুন. আপনি কি একটি ব্যাখ্যা যুক্ত করতে পারেন কারণ এটি দুর্দান্ত তবে আমার কী ধারণা হচ্ছে তা নেই: ডি
শারলক

@ শার্লক ৯ সম্পন্ন হয়েছে। তারিফ করার জন্য ধন্যবাদ.
Rɪᴋᴇʀ

যদি আমি এটি একটি ইন্টারেক্টিভ পাইথন ২.7. session সেশনে কেটে পেস্ট করি তবে এটি অভিযোগ করে যে এর আগে কোনও স্পেস নেই else
এরিক

@ এরিক আমি পাইথন ২.7.১০ ব্যবহার করছি এবং এটি আমার পক্ষে কাজ করে ...
আর

3

পাওয়ারশেল, (215-10) = 205 197 167 106 104 103 বাইট

$d='$c=(,1*{2}).count;$d={0}{1}{0};(("$c, $d"-f[char]39,$d,($c+1)),$c)[$c-eq15]';"1, $d"-f[char]39,$d,2

(যদি আপনার একমাত্র হাতিয়ারটি পাওয়ারশেল হয় তবে প্রতিটি সমস্যা পেরেকের মতো লাগে it অপেক্ষা করুন ...)

মূলত, আমরা মূল কোডের প্রায় কোয়েনের$d বড়-ওল-লম্বা স্ট্রিংয়ের সমান সেটিং দিয়ে শুরু করি । এটা তোলে আউটপুট এবং তারপর বিন্যাস অপারেটর সঙ্গে সঠিকভাবে পূরণ করতে , , দাঁড়ানো-ইন, বৃদ্ধিশীল নম্বর এক প্রতিটি সময় দ্বারা অধ্যায়।1$d-f{0}{1}{2}{2},1*{2}

,x*yPowerShell মধ্যে অপারেশন একটি নতুন অ্যারে তৈরি করে yআইটেম, প্রতিটি যা সমান x। উদাহরণস্বরূপ, ,2*3সমান @(2,2,2)

এর অর্থ, প্রথম আউটপুটটি হবে 1, $c=(,1*2).length;$d=(etc...), সুতরাং যখন দ্বিতীয় কোডটি কার্যকর করা $cহবে তখন অ্যারের গণনা সমান হবে @(1,1), বা 2ইত্যাদি Note নোট যেটি $cমূল কোডে ভেরিয়েবল হিসাবে ব্যবহৃত হয় না, কেবল পরবর্তী রানগুলিতে।

যখন এটি 15 টি প্রিন্ট করে তখন কেবল $cসমান হয় কিনা 15এবং তারপরে একটি অ্যারেতে ইনডেক্সিং করে 0 তম উপাদানটি $c, $dউপরে বর্ণিত হিসাবে, অন্যটি ন্যায়সঙ্গত 15। সুতরাং, যখন $c15 হয়, এটি আউটপুট 15এবং অন্য কিছুই হবে। বোনাসের জন্য যোগ্যতা অর্জন করে না, কারণ "15, {0}STOP!{0}"-10 সার্থক হওয়ার জন্য 5 টি অক্ষর খুব দীর্ঘ।

প্রস্থ> ~ 150 এর একটি পাওয়ারশেল টার্মিনাল প্রয়োজন। অথবা কোডটি অনুলিপি-আটকে দেওয়ার সময় আপনার অতিরিক্ত লাইনব্রেকটি ম্যানুয়ালি মুছে ফেলতে (যে টার্মিনাল সহায়কভাবে আউটপুট মোড়ানোতে সন্নিবেশ করিয়েছে )। অথবা আপনার জন্য একটি ভেরিয়েবলের আউটপুট ক্যাপচার এবং তারপরে সেই পরিবর্তনশীলটিকে পুনরায় কার্যকর করতে। প্রভৃতি

1 সম্পাদনা করুন - "স্টপ!" সরিয়ে কিছু বাইট সংরক্ষণ করেছেন বাক্যে কথন।
2 সম্পাদনা করুন - দুর, প্রতিটি সময় দৈর্ঘ্য ব্যবহার করবেন না, একবার এটিকে কল
করুন 3 সম্পাদনা করুন - কুইন হওয়ার দরকার নেই, তাই প্রাথমিক রানটি আরও সংক্ষিপ্ত হতে পারে
সম্পাদনা 4 - স্ট্রিং ব্যবহার করে পরিবর্তন করা অ্যারে গণনা করতে $c, যা দুটি বাইট সংরক্ষণ করেছিল। আমি নিশ্চিত যে এই পদ্ধতির জন্য এটি প্রায় অনুকূল।
5 সম্পাদনা করুন - পরিবর্তনের চেয়ে সরাসরি সমতা গণনা করে আরেকটি বাইট সংরক্ষণ করা হয়েছে


উইন্ডোজ 10 কনসোল উইন্ডো আর আউটপুট মোড়ানো লাইনব্রেক কপি করে না।
নীল

2

জাভাস্ক্রিপ্ট, 79 - 10 = 69 বাইট

s='STOP!';for(i=15;i;){s=i--+',alert("'+s.replace(/[\\"]/g,"\\$&")+'")'};alert(s)

কোনওভাবেই ব্যবহার না করে Function.prototype.toString



2

ব্যাচ, 73 + 5 - 10 = 68 বাইট

@set a=STOP!
@for /l %%a in (15,-1,1)do @set a=%%a, @echo !a!
@echo %a%

প্রয়োজন CMD /V:ONতাই আমি এটির জন্য 5 বাইট যুক্ত করেছি।


2

পাইথন 2.7, 107 টি অক্ষর

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

আমি এন = 4 এর জন্য একটি স্ট্রিং তৈরি করে \এবং "অক্ষরগুলি থেকে বেরিয়ে শুরু করেছি ।

print "1, print \"2, print \\\"3, print \\\\\\\"4, print \\\\\\\\\\\\\\\"STOP!\\\\\\\\\\\\\\\"\\\\\\\"\\\"\""

তারপরে আমি একটি ল্যাম্বডা ফাংশন তৈরি করেছি যা পুনরাবৃত্তি ব্যবহার করে একটি সূচনা সূচক এবং স্টপ সূচকগুলির উপর ভিত্তি করে এই স্ট্রিং তৈরি করে। এই হল:

l=lambda n,m:str(n)+", print "+"\\"*(2**(n-1)-1)+"\""+l(n+1,m)+"\\"*(2**(n-1)-1)+"\"" if n<m else "STOP!"

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

print l(1,15)

আউটপুট: [32902 টি অক্ষর, পরিচালনা করতে খুব দীর্ঘ]

সুতরাং, দেখে মনে হচ্ছে যে আমার কলমোগোরভ জটিলতা এতোটা সফল নয় ;-)


2

এসএমবিএফ , 28 বাইট

\x10আক্ষরিক বাইট উপস্থাপন করে (দশমিক মান 16)। পূর্ণসংখ্যা একটি পূর্ণসংখ্যা (বাইট) হিসাবে আউটপুট হয়। সুতরাং প্রথম অক্ষর আউটপুট হয় \x01। প্রোগ্রামটি তখন "," মুদ্রণ করে। নিজস্ব উত্স মুদ্রণ করার সময়, এটি +শুরুতে একটি অতিরিক্ত মুদ্রণ করে ।

+.<-<<.>.>[[<]>.[.>]<[-]], \x10

ব্যাখ্যা:

+.                                  Increment number and print
  <-                                Pre-decrement loop counter
    <<.>.>                          Print comma and space from own source
          [             ]           Only execute if loop counter != 0
           [<]>.                    Move to left of source, then print `+`
                [.>]                Print entire source.
                    <[-]            Zero out the loop counter so this program halts.
                         , \x10     The comma, space, and loop counter used earlier.
                                    Input is empty, so `,` doesn't do anything.

নোট করুন যে আপনি এটি কোনও স্ট্যান্ডার্ড ইন্টারপ্রেটারে চালাতে পারবেন না কারণ এর জন্য ইনপুটটিতে একটি হেক্সাস আক্ষরিক প্রয়োজন। হেক্স আউটপুটটি সঠিকভাবে কাজ করার জন্য আপনার একটি বিশেষ টার্মিনালও প্রয়োজন।


1

বাশ, 78 74 73 - 10 = 63 বাইট (উদাহরণস্বরূপ, জিততে পারে না)

p='if(($((++a>15))));then unset a p;fi;echo ${a-STOP\!}${p+, $p}';eval $p

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

ব্যাখ্যা:

এটি কাজ করে কারণ a1 থেকে 15 পর্যন্ত পদক্ষেপ এবং তারপরেও unsetরয়েছে p। স্ক্রিপ্ট (সঞ্চিত p) এগুলি উভয়ই প্রিন্ট করে যদি তারা হয় setএবং "বন্ধ!" অন্যথায়। প্রাথমিকভাবে unset aহয় setকারণ এটি একটি গাণিতিক সম্প্রসারণ প্রদর্শিত 0।


1

30, 30 টি চর / 47 বাইট (অপ্রতিযোগিতামূলক)

⟮a=1)+(a<ḏ?⬬+ⒸⅩ222+ᶈ0:⬯)ē(a,⧺a

Try it here (Firefox only).

অবশেষে good এর জন্য একটি ভাল ওল 'সত্যিকারের কুইন পাওয়া গেল 𝔼𝕊𝕄𝕚𝕟

ব্যাখ্যা

এখানে আমি ব্যবহার করেছি আসল কুইন: ⟮ⒸⅩ222+ᶈ0

আপনি আমার উত্তরে এটি দেখতে পাচ্ছেন? আশা করি, আপনি সমস্ত সেখান থেকে প্রসারিত করতে সক্ষম হবেন।


1

কেগ + পিএইচপি, 19-10 = 10 বাইট

ï_(. \,,,)\!POTS(,

1 থেকে 15 পর্যন্ত গণনা করা হয় এবং তারপরে থামে। Tio

কেগ, 13 বাইট

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