বোমকে উজ্জীবিত করুন!


214

ভাল লোকটি তার কাজটি করতে পারে এবং বিশ্বকে বাঁচাতে পারে তা নিশ্চিত করার জন্য আপনাকে একটি সিক্রেট এজেন্টের সাইড কিক হিসাবে আপনার প্রযুক্তি জ্ঞানের জন্য নিয়োগ দেওয়া হয়েছে।

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

চশমা

  1. এমন একটি প্রোগ্রাম লিখুন যা আপনি যেভাবে স্ট্রিং PASSWORD_01(বড় হাতের) চান আউটপুট করে ।
  2. যেহেতু আপনার কীবোর্ডটি বুলেটে আঘাত পেয়েছে, আপনি কেবল এই কীগুলি ব্যবহার করতে পারেন:

    1 2 3 4 5

    Q W E R T

    A S D F G

    < > Z X C

    Ctrl Shift Tab Space

    Shiftকীটি ব্যবহার করে আপনার কীবোর্ড আপনাকে এই অক্ষরগুলি ব্যবহার করতে দেয়:

    ! " · $ %

  3. আপনার কাছে কীবোর্ড এবং স্ক্রিন (উদাহরণস্বরূপ একটি মাউস) ব্যতীত অন্য কোনও হার্ডওয়্যার নেই বা আপনার কম্পিউটারে পাসওয়ার্ড সহ কোনও ফাইল নেই।

  4. আপনার কাছে ইন্টারনেট সংযোগ নেই।

  5. আপনি ধরে নিতে পারেন বুলেটগুলি আসার আগে আপনার কাছে দোভাষী শেল / উত্স সম্পাদক খোলা আছে Sad দুর্ভাগ্যক্রমে আপনি কীবোর্ডটি আঘাতের আগে এটিতে কিছু লিখেন নি।

  6. আপনার ভার্চুয়াল কীবোর্ড নেই। বাস্তবে বিওএমবিতে একটি TOO_FUNNY সনাক্তকারী রয়েছে যা আপনি স্ট্যান্ডার্ড লুফোলগুলি ব্যবহার করার চেষ্টা করলে এটি বিস্ফোরিত হবে ।

  7. যেহেতু আপনার বন্ধুটি আপনাকে সিক্রেট বেস থেকে বেরিয়ে যাওয়ার জন্য শীঘ্রই শেষ করার অপেক্ষায় রয়েছে, তাই আপনাকে সম্ভাব্যতম ক্ষুদ্রতম কোডটি লিখতে হবে (সুতরাং এটি এবং !)।

শুভকামনা কারণ গণনা শুরু হয়েছে!

সহায়তা মোড: এছাড়াও একটি KEY(কীবোর্ড থেকে আপনার কেবলমাত্র একটি কী, তবে শিফট + কী বা অন্য কোনও সংমিশ্রণ নয়) খুব অলৌকিকভাবে বেঁচে গেছে। উদাহরণস্বরূপ: আপনি ব্যবহার করতে পারেন =, বা 0বা /... এই অতিরিক্ত কীটি কোনও অক্ষরের মধ্যে থাকতে PASSWORD_01পারে না (যাতে আপনি যুক্ত করতে Pবা যোগ করতে পারবেন না O)। আপনার উত্তরে সেই কীটির নাম দিন। আপনি কতবার কীটি ব্যবহার না করেই এই কীটি ব্যবহারের জন্য আপনার কাছে 10 টি অক্ষরের শাস্তি রয়েছে


67
আমি কিবোর্ডের লেআউটটি ডিভোরাক এ পরিবর্তন করতে পারি?
n̴̖̋h̷͉̃a̷̭̿h̸̡̅ẗ̵̨́d̷̰̀ĥ̷̳

42
আমরা কি কমপক্ষে এন্টার কীটি পাই?
ousurous

72
হোয়াইটস্পেস, এখানে আপনার বড় সুযোগ!
জার্মানি_গুই

43
পাসওয়ার্ড কেন হতে পারল না stewardesses?
কোডব্রেকার

24
কৌতুকের উত্তর: আমি একজন গুপ্তচর, আমি আমার ঘড়ির মধ্যে লুকানো ব্যাকআপ কিবোর্ডে স্যুইচ করি।
Nzall

উত্তর:



136

বাশ, ভিএম এবং ডিসি (৩৪৩)

আমি একটি বাশ প্রম্পটে বসে আছি যা এভিল জিনিয়াস দ্বারা কনফিগার করা হয়েছে, এবং অবশ্যই তার VISUAL=vimডিফল্ট পরিবেশে রয়েছে। edit-and-execute-command( C-x C-e) ব্যাশের জন্য ডিফল্ট বাশ বাইন্ডিং ব্যবহার করে $VISUALএবং প্রস্থান ( ZZ) এ বের হওয়ার পরে এর বাফার সামগ্রীগুলি কার্যকর করা হবে । আমি নিম্নলিখিত ক্রমটি টাইপ করি (দ্রষ্টব্য: kbd-মোডটি সাধারণ মোড এবং নিয়ন্ত্রণ ক্রমগুলিতে জারি করা কমান্ডগুলি হয়):

  1. C-xC-e
  2. aবিড়াল <<< 45 C-c4C-aa

    এখন ভিম বাফার রয়েছে cat<<<49a। অবিরত ...

  3. 45 C-c3C-aa

  4. 54 C-c41C-aa
  5. 55 C-c13C-aa

    এখন ভিম বাফার রয়েছে cat<<<49a48a95a68a। অবিরত ...

  6. 51 C-c31C-aa

  7. 55 C-c24C-aa
  8. 44 C-c43C-aa
  9. 42 C-c41C-aa
  10. 42 C-c41C-aa
  11. 54 C-c11C-aa
  12. 55 C-c25C-aaএ> এস

    এখন ভিম বাফার রয়েছে cat<<<49a48a95a68a82a79a87a83a83a65a80a>s

    সন্নিবেশ মোড থেকে বেরিয়ে আসুন, সংরক্ষণ করুন এবং প্রস্থান করুন

  13. C-cZZ

    sফাইলটি বর্তমানে একটি রয়েছে dcস্ক্রিপ্ট যে স্ট্যাক আকাঙ্ক্ষিত স্ট্রিং উত্পন্ন, এখন আমরা মুদ্রণ আদেশ যোগ করতে হবে।

  14. C-xC-eaডিসি <<< 55 C-c25C-aaএ >> এসC-cZZ

    উপরের কমান্ডটি 9 বার পুনরাবৃত্তি করুন।

  15. C-xC-eaডিসি <<< 55 C-c25C-aaএ >> এসC-cZZ

  16. C-xC-eaডিসি <<< 55 C-c25C-aaএ >> এসC-cZZ

  17. C-xC-eaডিসি <<< 55 C-c25C-aaএ >> এসC-cZZ

  18. C-xC-eaডিসি <<< 55 C-c25C-aaএ >> এসC-cZZ

  19. C-xC-eaডিসি <<< 55 C-c25C-aaএ >> এসC-cZZ

  20. C-xC-eaডিসি <<< 55 C-c25C-aaএ >> এসC-cZZ

  21. C-xC-eaডিসি <<< 55 C-c25C-aaএ >> এসC-cZZ

  22. C-xC-eaডিসি <<< 55 C-c25C-aaএ >> এসC-cZZ

  23. C-xC-eaডিসি <<< 55 C-c25C-aaএ >> এসC-cZZ

  24. C-xC-eaবিড়াল <<< চ >> এস

    ডিসি স্ক্রিপ্ট কার্যকর করুন:

  25. C-xC-eaডিসি এসC-cZZ

আউটপুট:

PASSWORD_01

sফাইলের বিষয়বস্তু :

49a48a95a68a82a79a87a83a83a65a80a
P
P
P
P
P
P
P
P
P
P
f

4
চরিত্রটির vimকারণে আমি একটি স্ক্রিপ্ট করার কথা ভাবছিলাম Ctrl; এর সাথে জুড়ি দেওয়ার জন্য ভাল চিন্তা dc! এছাড়াও, দুর্দান্ত সমাধান :)
নিউনিও

2
এই সমস্ত <kbd> </kbd> ট্যাগ লিখতে আপনার কতক্ষণ সময় লেগেছে?
justhalf

15
@ অ্যাডেজাল্ফ: আমি এটিকে এইভাবে <Leader>kআবদ্ধ করে ভিমে লিখেছিলাম map <Leader>k i<kbd></kbd>^[F>a, সুতরাং এটি দেখতে খারাপ লাগেনি :-)।
থোর

18
এখন এটি স্পষ্ট যে এজেন্ট থর তার সরঞ্জাম ভালভাবে জানেন। আপনি অবসর প্রাপ্য, স্যার!
justhalf

67

রুবি, 57 + 10 ( *) = 67

$*<<4*4*5<<214%135<<44%25*5<<1%1
$><<"%cASSW%cRD%c%d1"%$*

এই উত্তরটি ব্যবহার করে *এবং %অনুপস্থিত অক্ষরগুলির (এবং 0 কে ফিক্সনাম হিসাবে) এর ASCII মানগুলি ব্যবহার করে এবং এগুলিকে $*( ARGV) এ ঠেলা দেয় । এই অ্যারেটি সঠিক পাসওয়ার্ড তৈরি করতে একটি বিন্যাসের স্ট্রিংয়ের সাথে একত্রে ব্যবহৃত হয়, যা $><<( $>স্টাডআউট) দিয়ে মুদ্রিত হয় ।

রুবি, 62 + 10 ( .) = 72, কোনও লাইন ব্রেক নেই

$>.<< "%cASSW%cRD%c%d1".% %w%%<<311%231<<214%135<<321%113<<1%1

উপরের সংস্করণ হিসাবে মোটামুটি একই মূলনীতিটি বাদে এখানে অ্যারেটি খালি অ্যারে আক্ষরিক ( %w%%) থেকে নির্মিত । .কাঙ্ক্ষিত অপারেটরটির অগ্রাধিকার পেতে কিছুটা ফিডলিং প্রয়োজন।


13
"উচ্চ বেতন এবং পুরো বিশ্বের কৃতজ্ঞতার সাথে অবসর নেওয়ার আগে এটি আপনার শেষ মিশন।" অভিনন্দন, আমরা সবাই আপনাকে ধন্যবাদ :)
টিমটেক

4
চূড়ান্ত প্রমাণ যে পার্ল রুবির সবচেয়ে বড় অনুপ্রেরণা।
পিয়ের আরলাড

11
আপনি লাইনব্রেকটি কীভাবে করলেন?
সিফালাপড

4
@ আরিয়ান ঠিক একইভাবে নায়োন্নিও তার পাইথন কোডটি পুনরায় টাইপ করার পরে চালায় ... আমি লাইন ব্রেক ছাড়াই একটি সংস্করণ যুক্ত করব।
ভেন্টোরো

দুষ্ট প্রতিভা কি রুবি ইনস্টল করেছেন?
এমএমএইচএম

36

সাদা স্থান (148 + 10 = 158)

Enter কী এখানে ব্যবহার করা প্রয়োজন।

SS+1010000L // Push code of P
TLSS        // Output character
SS+1000001L // Push code of A
TLSS        // Output character
SS+1010011L // Push code of S
SLS         // Duplicate top stack
TLSS
TLSS
SS+1010111L // Push code of W
TLSS
SS+1001111L // Push code of O
TLSS
SS+1010010L // Push code of R
TLSS
SS+1000100L // Push code of D
TLSS
SS+1011111L // Push code of _
TLSS
SS+0L       // Push 0
TLST        // Output number
SS+1L       // Push 1
TLST        // Output number
LLL         // End program

আমার স্বরলিপিটির ব্যাখ্যা:

  • S, +, 0শূণ্যস্থান আছে।
  • T, 1ট্যাব হয়।
  • L নতুন লাইন।
  • // মন্তব্য শুরু।

প্রতিটি লাইন হোয়াইটস্পেস ভাষায় একটি কমান্ড।

ডেমো


1
আহ মানুষ ... আমি কেবল এটি নিয়ে কাজ করছিলাম :(
টিউন প্রংক

1
আমাকেও, তবে আমি এই বিষয়টি ছেড়ে দিয়ে জানলাম যে কেউ দ্রুত হতে পারে
জার্মানি_গুই

আমি ভেবেছিলাম 'এল' পাওয়া যায় না?
500 - অভ্যন্তরীণ সার্ভার ত্রুটি

@ 500-InternalServerError: আসলে Lনতুন লাইন চরিত্রের জন্য দাঁড়িয়েছে stands রিয়েল কোডের জন্য ডেমোটি পরীক্ষা করে দেখুন। আমি যা পোস্ট করেছি তা হ'ল পাঠযোগ্য সংস্করণ।
n̴̖̋h̷͉̃a̷̭̿h̸̡̅ẗ̵̨́d̷̰̀ĥ̷̳

আহ, আমি এখন এটি পেয়েছি।
500 - অভ্যন্তরীণ সার্ভার ত্রুটি

25

পাইথন ( 2200 395 + 10)

exec"""exec"exec"+"%ca"%34+"%c52+53"""+"%c55+55"%44+"%c34"%44+"%c45+35"%44+"%c"%44+"""34%%cexec"%"""+"%c"%54+"""1+"%c"%34+"%%5%c+"%5"""+"%c"%55+"""+"%c"%34+"%c"""+"%c"%112+"""r%%c%%ct%%c%%cASSW"+"%c%%34+"%34+"%c%%cRD"%34+"%c%%"""+"%c"%55+""""%34+"%c+"%5"""+"%c"%55+"""+"%c%%c"%34+"%c%%"%34+"%c5+"%5"""+"%c"%55+"""+"%c"%34+"%c1%%c"+"%c%%4"%34+"%c+"%5"""+"%c"%54+"""+"%c"%34+"%c%%a"+"%c%%34"%34"""

আমার +চরিত্রটির প্রয়োজন ছিল (দাম 10 +), যা নামপ্যাড (বা কিছু নির্দিষ্ট বিন্যাসে) থেকে পাওয়া যায়।

হ্যাঁ, আমি টাইপ করার সময় বিওএমবি সম্ভবত চলে গিয়েছিল।

বেসিক পদ্ধতির ব্যবহার execএবং এর মাধ্যমে আরও বড় চরিত্র সেটগুলি তৈরি করা "%c"%(number)execএকে অপরের ভিতরে চারটি নেস্টেড থাকে। ধীরে ধীরে আমার ডিজিট সেটটি এগিয়ে চলেছে

  1. 12345
  2. 1234567 (6 = এএসসিআইআই 54, 7 = এএসসিআইআই 55)
  3. 123456789 (8 = ASCII 56, 9 = ASCII 57)
  4. 0x0123456789abcdef

যাতে চূড়ান্ত পুনরাবৃত্তিতে কোনও চরিত্র প্রকাশ করা সম্ভব হয় (যাতে অন্তর্নিহিত সংস্করণটি আসলে কোনও প্রোগ্রাম চালাতে পারে)।

প্রোগ্রামের প্রায় 50% কেবলমাত্র উদ্ধৃতি অক্ষর ( "%c"%34একটি দ্বিগুণ উদ্ধৃতি), কারণ execবিবৃতিগুলির নেস্টেড প্রকৃতিটি আক্রমণাত্মকভাবে উদ্ধৃতি চরিত্রগুলিকে "পলায়ন" দাবি করে।


আপনি যদি সংখ্যার কীপ্যাড থেকে "+" ব্যবহার করেন, আপনি কীবোর্ডের ভাষা থেকে স্বতন্ত্র।
celtschk

@ এসলেটস্ক্ক: ভালো কথা! আমি সম্পাদনা করবে না।
nneonneo

1
নেস্টেড এক্সেকস দিয়ে ডিজিট সেট তৈরি করার পরিবর্তে, আপনি পাটিগণিত ব্যবহার করে নম্বর পাবেন না? যাত্রা। exec '%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c'%(112,114,51+54,55+55,1+115,32,4+35,25+55,11+54,31+52,31+52,32+55,24+55,31+51,13+55,41+54,3+45,4+45,4+35)
কেভিন

2
কারণ আপনি উভয় পেরেন্স পেতে পারেন না। (আমি এটি বিবেচনা করেছি!)
nneonneo

অতিরিক্তভাবে, পাইথনের অনেক অপারেটর নেই যা% এর চেয়ে বেশি দৃ strongly়ভাবে আবদ্ধ হয়। ** একটি, তবে বেশিরভাগ শর্ত তৈরির জন্য এটি মোটামুটি অকেজো।
nneonneo

25

অনিদ্রা 39 35 31 29

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

এটিকে আরও 29 টি অক্ষরে ফেলে দিন, যা মেমরির ব্যবহার হ্রাস করার পরে অনুসন্ধানের স্থান বাড়িয়ে তোলার ক্ষেত্রে সম্ভব:

FdFzt%dF<rGdt>tt Gtreeet t%4s

আমি অনুমতি পেয়েছি এমন অক্ষরের পুরো সেটটিতে আমার টুইক আপ প্রোগ্রামটি চালানোর সিদ্ধান্ত নিয়েছি এবং সমাধানটি 31 টি অক্ষরে কেটে রেখেছি:

FdFGt dtreeC>tt FFdx<Fdtr ztq4s

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

Fddx>"eCeezdC>CefCdddzCzzfCqred>r4s

পুরানো সংস্করণ হাতে নির্মিত। আমি মনে করি এটি করতে সকাল অবধি থাকি।

Fddx>"eCeezdC>Cef>dx"dCezeeedeCrqeeC%4s

পরীক্ষার জন্য এখানে অনিদ্রা দোভাষী


3
আপনার প্রোগ্রামিং ভাষার পছন্দের সাথে "সকাল অবধি থাকা" মিলে যাওয়ার জন্য +1।
justhalf

20

কিছু উইন্ডো ম্যানেজারের উপর ভিএম + পিএইচপি

ব্যবহারের জন্য 10-পয়েন্ট জরিমানা সহ 44 টি স্ট্রোকের 65 টি কী =

aEACE<Alt+Tab>z=5<Alt+Tab>$xxxxaASSWRD<Alt+Tab>z=1<Alt+Tab>
$a$aA<Alt+Tab>==wxx$r1<^X>a1

একটি ভাঙ্গন:

  • Alt+TabEscভিমের সাথে বা সম্ভবত এই টার্মিনাল এমুলেটারের সাথে কাজ করার মতো উপস্থিত রয়েছে । আমাকে নতুন কিছু শেখানোর জন্য ধন্যবাদ!
  • aEACE<Alt+Tab>: অ্যাপেন্ড মোডটি প্রবেশ করুন এবং "EACE" ”োকান। থেকে প্রস্থান করুন।
  • z=5<Alt+Tab>: বানান সংশোধন করুন। 5, "PEACE" নির্বাচন করুন। থেকে প্রস্থান করুন। ( এখানে Escযেমন কাজ করছে বলে মনে হচ্ছে Enter!)
  • $xxxxaASSWRD<Alt+Tab>: লাইনের শেষে যান। 4 অক্ষর মুছে দিন এবং যোগ ASSWRD, ফলে PASSWRD। স্বাভাবিক মোডে ফিরে যান। (না, 4xকাজ করবে না।)
  • z=1<Alt+Tab>: PASSWORDহয় সম্ভবত এই প্রথম সংশোধন হতে যাচ্ছে। এটি নির্বাচন করুন।
  • $a$aA<Alt+Tab>: লাইন শেষে যান, এবং একটি যোগ $aA। স্বাভাবিক মোডে ফিরে যান।
  • ==: চমত্কারভাবে পিএইচপি এই লাইন ফরম্যাট, ক্যামেলকেস পরিবর্তন $aAকরতে $a_a। এটি কার্সারটিকে আবার লাইনের শুরুতে সরিয়ে দেয়।
  • wxx: একটি শব্দ এগিয়ে যান; কার্সার এখন আগে ছিল $। - দুই অক্ষর মুছে দিন $এবং aকরতে - PASSWORD_a
  • $r1: রেখার শেষ প্রান্তে যান এবং এর সাথে বর্তমান চরিত্রটি (অর্থাত্ a) প্রতিস্থাপন করুন 1যার ফলস্বরূপ PASSWORD_1
  • ^X: কার্সারের নীচে পূর্ণসংখ্যা হ্রাস, ফলস্বরূপ PASSWORD_0
  • a1: অবশেষে, সংযোজন 1, জন্য PASSWORD_01!

আমি প্রতিলিপি করতে পারবে না ==কমান্ড, এটা ঠিক বৃহৎ খাঁজ মোড আমার ষষ্ঠ সেটআপ (Debian 7, v7.3.547) এ টগল
Cengiz ক্যান

11

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

অতিরিক্ত চরিত্র নেই!

দুর্ভাগ্যক্রমে, কোডটি অত্যন্ত দীর্ঘ। সুতরাং পরিবর্তে, প্রোগ্রামটি উত্পন্ন করার জন্য এখানে কোডটি রয়েছে:

x=[2**n for n in xrange(16)]
y=-5
print('exec"""exec'+x[7]*'%'+'c""'+x[6]*'%'+'cr'+x[-2]*'%'+'c'+x[-1]*'%'+'ct'+x[8]*'%'+'c'+x[-4]*'%'+'cASSW'+x[-5]*'%'+'cRD'+x[-3]*'%'+'c'+x[0]*'%'+'s1'+x[10]*'%'+'c '+x[9]*'%'+'c""'+x[y]*'%'+x[1]*'%'+'s'+x[y]*'%'+x[2]*'%'+'s'+x[y]*'%'+x[3]*'%'+'s'+x[y]*'%'+x[4]*'%'+'s'+x[y]*'%'+x[5]*'%'+'s"""'+'%`1>>1`%`2531>>5`%`321>>2`%`1521>>4`%`211>>1`%`221>>1`%112%34%34%34%34')

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

(কোড চালানোর জন্য, বাইরের পরিবর্তন printএকটি মধ্যে exec। অথবা, প্রোগ্রাম জেনারেট করেন, তারপর পেস্ট চালানো। অথবা pastebin নীচে লিঙ্ক থেকে কপি করুন।)

ব্যাখ্যা:

লক্ষ্যটি কার্যকর করা:

print"PASSWORD_01"

()+চরগুলি ব্যবহার এড়াতে , আমাদের একসাথে বেড়ানো একাধিক স্ট্রিং ফর্ম্যাট অপারেশন ব্যবহার করতে হবে। এর অর্থ হ'ল প্রতিটি পদক্ষেপ কার্যকরভাবে প্রতিটি পূর্ববর্তী পদক্ষেপের জন্য প্রয়োজনীয় অক্ষরের সংখ্যা দ্বিগুণ করে %:

print"%cASSW%%cRD%%%%c%%%%%%%%c1"%80%79%95%48

যদিও এটি যথেষ্ট নয়, কারণ প্রয়োজনীয় কয়েকটি সংখ্যক তৈরি করা যায় না এবং আমরাও তৈরি করতে পারি না print। সুতরাং আমরা সঙ্গে বিমূর্ততা একটি স্তর যোগ execজন্য printING, এবং ASCII কোড পয়েন্ট আমরা ফরম্যাট করতে তৈরি করতে পারবেন না একটি স্তর। নিম্নলিখিতটি মূলত আমার উত্তর, তবে প্রতিটি স্ট্রিংকে %এককভাবে হ্রাস করার সাথে (লক্ষ্য করুন যে এটি %s%s%s%s%sকোনও সঠিক উপস্থাপনা নয়, %প্রতিটিটির আগে আক্ষরিক প্রয়োজনের জন্য অ্যাকাউন্টে ব্যর্থ হয়ে ):

exec"""exec%c""%cr%c%ct%c%cASSW%cRD%c%s1%c %c""%s%s%s%s%s""" % `1>>1`%`2531>>5`%`321>>2`%`1521>>4`%`211>>1`%`221>>1`%112%34%34%34%34

প্রথম পদক্ষেপ: বহিরাগত exec:

exec""" ... ASSW%cRD ... %s%s%s%s%s""" % `1>>1` % `2531>>5` % `321>>2` % `1521>>4` % `211>>1` % `221>>1`
  1. 1>>1: 0, 0ইন জন্য ব্যবহৃতPASSWORD_01
  2. 2531>>5: 79, তৈরি করতে অভ্যন্তরীণ নির্বাহকের জন্য ব্যবহৃতO
  3. 321>>2: 80, তৈরি করতে অভ্যন্তরীণ নির্বাহকের জন্য ব্যবহৃতP
  4. 1521>>4: 95, তৈরি করতে অভ্যন্তরীণ নির্বাহকের জন্য ব্যবহৃত_
  5. 211>>1: 105, তৈরি করতে অভ্যন্তরীণ নির্বাহকের জন্য ব্যবহৃতi
  6. 221>>1: 110, তৈরি করতে অভ্যন্তরীণ নির্বাহকের জন্য ব্যবহৃতn

দ্বিতীয় পদক্ষেপ: অভ্যন্তরীণ প্রস্তুত exec

উপরের পরে, অভ্যন্তরীণ execকিছু এই রকম:

exec%c""%cr%c%ct%c%cASSWORD%c01%c %c""%79%80%95%105%110

ব্যতীত আপনি এটি যথেষ্ট পাবেন না। সরলিকরণগুলির পরেও, আপনি এটি পেয়ে যাবেন:

exec%c""%cr%c%ct%c%cASSWORD%c01%c %c""798095105110

আক্ষরিক %অন্তর্ভুক্ত করা প্রয়োজন। সুতরাং মূলত আমাকে সমস্ত ফর্ম্যাটিংয়ের পরে %sআক্ষরিক %বামে শেষ হওয়ার আগে তাদের একগুচ্ছ যোগ করতে হয়েছিল । 2**11তাদের মধ্যে. পাঁচবার

বাকি বাইরের execস্ট্রিং ফর্ম্যাট অপারেশনগুলি %112%34%34%34%34। এর 112জন্য p, এবং অন্যান্যগুলি উদ্ধৃতি চিহ্ন। সেগুলি প্রয়োগ করার পরে ফলাফলটি এরকম কিছু:

exec"""pr%c%ct"%cASSW%cRD%c01" """%79%80%95%105%110

তবে বাস্তবে এর গুচ্ছ আরও রয়েছে %। এই এর:

exec"""pr%%%%%%%%c%%%%%%%%%%%%%%%%ct"%%cASSW%cRD%%%%c01" """%79%80%95%105%110

চূড়ান্ত পদক্ষেপটি কেবল এটি চালানো হয় যার পরে আপনি প্রয়োজনীয় আউটপুট পান।


এখানে সম্পূর্ণ কোড: http://pastebin.com/rSFs6DiH


7
চিত্তাকর্ষক! বিওএমবি বিস্ফোরণের আগে আপনি সমস্ত হাতে লিখেছেন? কোনও ভুল না করে (কোনও ব্যাকস্পেস কী নেই)? আপনি, স্যার বা ম্যাডাম, আপনার পেনশন প্রাপ্য। ; ডি
ডিএলকস

10

বাশ + ভিম (৫))

Ctrl-XCtrl-Eথোর সমাধান থেকে বাশ ট্রিকটি ধার করা , এখানে আমি কীভাবে এটি ব্যাশ + ভিমে করব:

C-XC-E ডিফল্ট সম্পাদক শুরু হয় (সাধারণত vim)

a সন্নিবেশ মোড শুরু হয়

.space ASSW

C-Vx4f টিপে O

RD

C-Vx5f টিপে _

1

C-3সমান escape(শুধুমাত্র ভিমে নয়, টার্মিনালের যে কোনও জায়গায়)

C-X1আমি সবে টাইপ করা আই থেকে 1 টি বিয়োগ করে

a আবার মোড .োকান

1 C-3

বাফার সামগ্রী এখন . ASSWORD_01

<< আনইন্ডেন্ট লাইন (কোনও অপ-বিকল্প, যেহেতু লাইন ইন্ডেন্টড নয়) এবং কার্সারটিকে 1 ম কলামে সরান

a

C-X শব্দ সমাপ্তি শুরু করুন

C-V প্রাক্তন কমান্ড দিয়ে সম্পূর্ণ

C-V আরও 9 বার এন্ট্রি নির্বাচন করে Print

C-3 স্বাভাবিক মোডে ফিরে আসুন

XXXxx মোছাগুলিকে rint 

< < 1 কলাম ফিরে

sমুছুন ., সন্নিবেশ মোড শুরু করুন

e c C-X C-Vপ্রাক্তন কমান্ডটি আবারো সমাপ্ত হয়, আমি সবেমাত্র টাইপ করেছি echoবলে এন্ট্রি ইতিমধ্যে নির্বাচিতec

space C-3 বাফার সামগ্রী এখন echo PASSWORD_01

Z Z বাফার সংরক্ষণ করুন, ভিম বন্ধ করুন, বাশ ফাইলের সামগ্রী নির্বাহ করে, যেমন echo PASSWORD_01

পথ দ্বারা: C-3অনেক দরকারী ভাইদের রয়েছে: C-Jহয় Enter, C-Iহয় Tab, C-Hহয় Backspace, C-2হয় C-@(অর্থাত একটি নাল-বাইট)। এবং ইমাস ব্যবহারকারীদের জন্য এটি জেনে রাখা ভাল যে Escapeঅন্য একটি কী Alt+ এর সাথে সমান । সুতরাং, এমনকি ছাড়াই Escapeএবং Altআপনি এখনও এর মতো मेटाটা-এক্স টাইপ করতে পারেন:C-3x


9

পার্ল, (31 + 10/41 + 10/64 + 10)

( ^কী ব্যবহৃত, 3 টি উপায়)

exec"easswsrdcqw"^"5    <  <AF"                   # exec "PASSWORD_01"

  • যদি সিস্টেম কমান্ড হিসাবে চলমান "আউটপুট" হিসাবে যোগ্য হয় তবে তা বৈধ।

exec"QQZSqeasswsrdcqw"^"422<Q5    <  <AF"         # exec "echo PASSWORD_01"
  • বৈধ যদি আমাকে বাহ্যিক / ওএস কমান্ড ব্যবহার করার অনুমতি দেওয়া হয়। (এখানে দৌড়াও)

exec"EQAXqwQqQZQxqeasswsrdcqwxqq"^q!5434QZ4S534$S5    <  <AF$SS! 
                  # exec "perl -e\"die\\\"PASSWORD_01\\\"\""
  • যদি আমি সিস্টেমের মাধ্যমে পার্ল সম্পাদন করতে পারি তবে বৈধ। (এখানে চালান) <- printএটির পরিবর্তে এটি ব্যবহার করেdie

স্ক্রিপ্টগুলি পার্লের বিটওয়াইজ স্ট্রিং এক্সওআর অপারেটর ব্যবহার করে ^ , যা দুটি স্ট্রিংয়ের অক্ষর বিটগুলিতে একটি এক্সওআর করে। এটি আমাকে PASSWORD_01 এর জন্য অনুপস্থিত অক্ষরগুলি পুনরায় তৈরি করতে এবং সিস্টেম কমান্ডের জন্য অক্ষরগুলি তৈরি করতে দেয়।

নিয়মগুলি কতটা নিরস্ত হয় তার উপর নির্ভর করে আমি তিনটি রূপটি তৈরি করেছিলাম। আমি ধরে নিলাম যেহেতু 2 এবং 3 রূপগুলি আইডিয়নে শব্দগুলি আউটপুট দেয়, সমাধানগুলি বৈধ। আমি এখানে থাকা ছোট্ট গল্পটি সরিয়ে দিয়েছি যেহেতু আমি বুঝতে পেরেছিলাম যে কেউ এটি পড়বে না, তবে আপনি যদি আগ্রহী হন তবে আপনি এটি সম্পাদনাগুলিতে পড়তে পারেন!


4

ওও কোড (300)

QwerTaSdfGzxCqwertAsDfgZxCQwerTasDfgZxcQweRtaSDfgZxCqwertAsDFgZXcQWeRtaSdFGzxcQwERTasdfGzxc
QwErtAsdFgzxcqWeRtaSdFGzxcQweRtaSDfGZxCqWErTAsDFgZXCqWerTasDfgZxcQweRtaSdfGzxCQwErTAsDFgZXC
qWertAsDfgzxcQwERtASdFGzXcqWeRTasdFGzXcQWeRtAsDfgzxcQwERtASdFGzXCqWerTaSDfgzXcQWErTaSdFgZxc
QwertaSdFgzXcQWertASdFgZXCq

সহজ। (লাইনফিডগুলি alচ্ছিক এবং কোডটি "আরও পঠনযোগ্য" করার জন্য এখানে রয়েছে) কোড জেনারেটর ব্যবহৃত হয়েছে:

o=lambda b,c:"".join(i.upper()if j else i for i,j in zip(__import__('itertools').cycle(c),map(int,"".join((3-len(i))*'0'+i for i in(bin('><[]-+.,'.index(i))[2:]for i in b)))))

কম মূর্খ এনকোডিংয়ে একই কোড:

EeeeEeEeeEeeEeeeeeEeEeeEeEEeeeEeeEeeEeeEeeEeeEEeeEeEeeeeeEeEEeEEeEEeEeeEeEEeeeEeEEEeeeeEeee
EeEeeEeeEeeeeeEeEeeEeEEeeeEeeEeeEEeEEeEeEEeEEeEEeEEEeEeeEeeEeeEeeEeeEeeEeeEeeEEeEeEEeEEeEEE
eEeeeEeEeeeeeEeEEeEEeEEeEeeEeEEeeeEEeEeEEeEeEeEeeeeeEeEEeEEeEEeEEeEeeEeEEeeeEeEEEeEeEeEeEee
EeeeeeEeEeeEeEEeeeEEeEeEEEe


3

ফেরনাডো, 179 + 10 = 189 বাইট

2 1
1 2 1 2 1 1 1 1
1 2 1 1 1 1 1 2
1 2 1 2 1 1 2 2
1 2 1 2 1 1 2 2
1 2 1 2 1 2 2 2
1 2 1 1 2 2 2 2
1 2 1 2 1 1 2 1
1 2 1 1 1 2 1 1
1 2 1 2 2 2 2 2
1 1 2 2 1 1 1 1
1 1 2 2 1 1 1 2

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

Enterব্যবহার করা হয়েছে। আমি কোডটি আরও পাঠযোগ্য 0ও ব্যবহারযোগ্য 1করে তুলতে চাই তবে আমি ব্যবহার করতে পারি না 0


আমি মনে করি প্রবেশের অনুমতি দেওয়া হয়েছে।
কনর ও'ব্রায়েন

2
ওপি বলেন নি যে প্রবেশের অনুমতি দেওয়া হয়েছিল।
এক্রোলিথ

3

জেএস-ফোর্থ, 103 বাইট

স্ট্রিংটি অক্ষরের অ্যারে হিসাবে স্ট্যাকের উপরে ফিরে আসবে।

12544 1 3 << >> 24 1 << 1521 4 >> 34 1 << 41 1 << 2531 5 >> 351 2 >> 332 2 >> 32 2 >> 131 1 >> 321 2 >>

এটি অনলাইনে চেষ্টা করুন - মন্তব্য করা সংস্করণ


ব্যাখ্যা:

আমি প্রথম অনুমোদিত শব্দগুলির তালিকা পেয়েছি । মূলত, কেবলমাত্র আমি যে জিনিসগুলি ব্যবহার করতে পারি তা হ'ল:

  • 12345 সংখ্যার ধ্রুবক
  • << বাম শিফ্ট
  • >> শিফট ডানদিকে
  • s>f ভাসা স্ট্যাক থেকে একক পুশ করুন
  • f>d ফ্লোট স্ট্যাক থেকে পপ ডাবল
  • fsqrt ফ্লোট স্ট্যাকের স্কোয়ার রুট

সুতরাং আমি নিম্নলিখিতটি ব্যবহার করে সংখ্যার ধ্রুবক, বিট-শিফট এবং স্কোয়ার রুট গণনা করতে পারি ( >>প্রতিস্থাপন করুন drop, সরানোর 0জন্য স্থানান্তরিত করে 0):

s>f fsqrt f>d >>

ভাগ্যক্রমে, আমি বর্ধমান শিকড় ব্যবহারের চেয়ে কম যেগুলি তৈরি করতে আমার প্রয়োজনীয় প্রতিটি ধ্রুবকটির জন্য সম্ভব বিট শিফটগুলি পেয়েছি। অধিকাংশ অংশ জন্য, আমি কেবল প্রতিটি সংখ্যা ছক, অথবা দুই এর একটি বৃহত্তর শক্তি মুদ্রণ তাদের মধ্য থেকে যে একটি অঙ্ক অন্তর্ভুক্ত অনুসন্ধান 6-0। তারপরে, আমি বুঝতে পারি যে f>dআরও সম্ভাবনাগুলি খুঁজে পেতে আমি নির্ভুলতার ক্ষতি ব্যবহার করতে পারি । (আমি সংখ্যায় যোগ করতে পারি, তবে এখনও একই পূর্ণসংখ্যার বর্গমূল পেতে পারি)) কিছুক্ষণ পরে, আমি কিছুটা এবং তারপরে সমস্ত স্থির খুঁজে পেতে বিট-শিফটিং ব্যবহার শুরু করি। বৃহত্তর >>বিট-শিফট, আরো আমি "ম্যাজিক নম্বর" এ যোগ করতে পারি এবং এখনও একই ফলাফল পেতে। সুতরাং আমি প্রয়োজনীয় ফলাফল পেতে আমি যে ক্ষুদ্রতম বিট-শিফট ব্যবহার করতে পারি তা পেয়েছি। এমনকি সংখ্যাগুলিও মাঝে মাঝে ব্যবহার করতে পারে <<, প্রতিক্রিয়াগুলি ব্যবহার করতে হয়েছিল >>

মন্তব্য করা কোড ( \একটি মন্তব্য শুরু):

\ 49
12544 1 3 << >>

\ 48
24 1 <<

\ 95
1521 4 >>

\ 68
34 1 <<

\ 82
41 1 <<

\ 79
2531 5 >>

\ 87
351 2 >>

\ 83 (x2)
332 2 >> 332 2 >>

\ 65
131 1 >>

\ 80
321 2 >>

gForth এর শব্দ <<বা নেই >>। পরিবর্তে এটি আছে lshiftএবং rshift, যা আমি ব্যবহার করতে পারি না


3

দশমিক , 190 180 + 10 = 190 বাইট

12055D12025D41D301212055D12010D41D301212055D12025D41D12003D41D30130112004D41D301212055D12024D41D30112003D41D301212055D12013D41D301212055D12040D41D301212045D12003D41D30112001D41D301

এটি অনলাইন চেষ্টা করুন! দশমিক হ'ল এক বিশেষ ভাষা যা দশমিক এবং অক্ষর ব্যতীত আর কিছুই ব্যবহার করে না D। তবে, আমার +10 জরিমানার প্রয়োজন কারণ প্রায় প্রতিটি কমান্ড ব্যবহার করে 0

ভাগ্যক্রমে, মুদ্রণের জন্য প্রয়োজনীয় সমস্ত কমান্ডের PASSWORD_01কোনও সংখ্যা প্রয়োজন নেই 6:

  • 12...D - একটি চরিত্র ধাক্কা
  • 2 - একটি মান পপ করুন
  • 41D - পপ শীর্ষ দুটি স্ট্যাক মান, গুণ এবং ফলাফল ধাক্কা
  • 301 - মুদ্রণ ডিএসআই (ডিফল্ট স্ট্যাক সূচক)

চরিত্রের মানগুলিকে বার বার চাপ দিয়ে যা কেবল 1 থেকে 5 এর মধ্যে অঙ্কগুলি ব্যবহার করে, তারপরে সেগুলি যুক্ত করে আমি প্রতিটি অক্ষরের অক্ষরের মান তৈরি করতে পারি PASSWORD_01

অবহেলিত এবং মন্তব্য করেছেন:

12055D     ; push char 55 to stack
12025D     ; push char 25 to stack
41D        ; pop [DSI] and [DSI-1], add and push result
3012       ; print from stack to output, pop
12055D     ; push char 55 to stack
12010D     ; push char 10 to stack
41D        ; pop top two stack values, add and push result
3012       ; print from stack to output, pop
12055D     ; push char 55 to stack
12025D     ; push char 25 to stack
41D        ; pop x2, add, push
12003D     ; push char 3 to stack
41D        ; pop x2, add, push
301301     ; print, print
12004D     ; push char 4 to stack
41D        ; pop x2, add, push
3012       ; print, pop
12055D     ; push char 55 to stack
12024D     ; push char 24 to stack
41D        ; pop x2, add, push
301        ; print
12003D     ; push char 4 to stack
41D        ; pop x2, add, push
3012       ; print, pop
12055D     ; push char 55 to stack
12013D     ; push char 13 to stack
41D        ; pop x2, add, push
3012       ; print, pop
12055D     ; push char 55 to stack
12040D     ; push char 40 to stack
41D        ; pop x2, add, push
3012       ; print, pop
12045D     ; push char 45 to stack
12003D     ; push char 3 to stack
41D        ; pop x2, add, push
301        ; print
12001D     ; push char 1 to stack
41D        ; pop x2, add, push
301        ; print

3

হোয়াইটস্পেস , স্কোর: 111 (101 বাইট + 10 এর জন্য Enter)

[S S T  T   T   T   T   T   N
_Push_-31_1][S S T  T   S S S S S N
_Push_-32_0][S S S T    T   T   T   N
_Push_15__][S S T   T   T   S S N
_Push_-12_D][S S S T    S N
_Push_2_R][S S T    T   N
_Push_-1_O][S S S T T   T   N
_Push_7_W][S S S T  T   N
_Push_3_S][S N
S _Duplicate_3_S][S S T T   T   T   T   N
_Push_-15_A][S S S N
_Push_0_P][N
S S N
_Create_Label_LOOP][S S S T S T S S S S N
_Push_80][T S S S _Add][T   N
S S _Output_as_character][N
S N
N
_Jump_to_Label_LOOP]

বর্ণ S(স্থান), T(ট্যাব) এবং N(নতুন লাইন) কেবল হাইলাইট হিসাবে যুক্ত করা হয়েছে।
[..._some_action]শুধুমাত্র ব্যাখ্যা হিসাবে যুক্ত।

এটি অনলাইনে চেষ্টা করুন (কেবলমাত্র কাঁচা জায়গা, ট্যাব এবং নতুন লাইন সহ)।

সিউডো-কোডে ব্যাখ্যা:

এই সমাধান চেয়ে খাটো বিদ্যমান হোয়াইটস্পেস উত্তর ( @ n̴̖̋h̷͉a̷̭̿h̸̡̅ẗ̵̨d̷̰ĥ̷̳ আমাকে জিজ্ঞাসা একটি পৃথক উত্তর যেমন পোষ্ট করতে যখন আমি গলফ যেমন প্রস্তাবিত) ব্যবহার দ্বারা আমার এই হোয়াইটস্পেস ডগা

Push the code-points for the characters of "10_DROWSSAP" minus constant 80 to the stack
Start LOOP:
  Add 80 to the current code-point
  Pop and output it as character
  Go to the next iteration of LOOP

এই জাভা প্রোগ্রামটির80 সাথে ধ্রুবকটি উত্পন্ন হয়েছে , যা আমি আমার কিছু পূর্ববর্তী হোয়াইটস্পেস উত্তরের জন্য তৈরি এবং ব্যবহার করেছি।


2

স্ট্যাক্স , 91 + 10 বাইট

"W"EEEd$"$"1 !$Re]"$""ASSW"R"$""a"EEE$"$"a$Re]R"$""RD"R"$""a"EEEd$"$""5"Re]R"$"1 !$R"$""1"R

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

]সিলেটলেট তৈরি করতে ব্যবহার করে।

ব্যাখ্যা

আসুন দেখুন কীভাবে "P"উত্পন্ন হয় এবং কীভাবে "ASSW"সাধারণ ব্যবহার না করে যুক্ত করা হয় +

"W"                             Push "W", or [87]
   E                            Convert to a scalar, 87
    E                           Convert to an array of digits, [8,7]
     E                          Push 8 on the stack, then push 7.
      d                         Pop the 7 and discard it.

                                Start making components of regex substitution
       $                        Pop 8, push "8"
        "$"                     Push "$"
           1 !                  Push 0. The space is necessary because normally one doesn't do 1! to obtain 0
              $                 Pop 0, push "0"
               R                Do regex substitution 's/$/0/g' on the string "8"

                                Basically doing "8"+"0" without using +
                e               Pop "80", push 80
                 ]              Singleton. Pop 80, push [80], or "P"
                  "$""ASSW"R    Use the same trick again to append "ASSW" to "P"

বাকিরা কেবল একই কৌশলটি পুনরাবৃত্তি করছে।

"a"EEE$"$"a$Re]Rবিনিময়সমূহ টি সংখ্যা "a"বা [97]করতে [79]বা"O" এবং স্ট্রিং এটা appends।

"$""RD"R appends "RD"

"$""a"EEEd$"$""5"Re]R"a"আবার পেতে "9"এবং বাতিল করার জন্য ব্যবহার করে "7", তারপরে আক্ষরিকের "9"সাথে একত্রিত "5"হয় [95]বা গঠন করে"_" মিশ্রণটি , এবং স্ট্রিংয়ের সাথে যুক্ত করে।

"$"1 !$R 1 এর যৌক্তিক নয়, একটি শূন্য লাভ করে এবং এটি স্ট্রিংয়ের সাথে যুক্ত করে।

"$""1"R ফাইনাল সংযোজন "1" এবং আমরা সম্পন্ন।

অন্তর্নির্মিত আউটপুট।


1
ও_ও ... এটি চালাক
পুনরাবৃত্তি

তোমার প্রশংসার জন্য ধন্যবাদ. যদিও আমি বিশ্বাস করি এটি আরও সংক্ষিপ্ত করা যেতে পারে (সম্ভবত কোনও আলাদা কী চয়ন করে?)।
ওয়েইজুন চিউ

2

ব্রেনফাক , 400 + 10 ( +) = 410 বাইট

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.<.>>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++..++++.<<++++++++++++++.+++.>>>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.<++++++++.>>>>++++++++++++++++++++++++++++++++++++++++++++++++.+.<

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


2

MS-DOS .COM 8086 মেশিন কোড (72 বাইট)

সময়টি মূল্যবান, সুতরাং সংকলক বা দোভাষী দ্বারা ডিলি-ডালি করার কোনও সময় নেই! কেবল আপনার পছন্দের পাঠ্য সম্পাদকটি খুলুন এবং নিম্নলিখিতটিতে টাইপ করুন (টিএবির \tসাথে প্রতিস্থাপন করুন ):

451D<1DAQX1D11D3AQX4c1DDQX4<SZ!Gq\tGq3WqEEEEESX5\t\t2!<<<<<<<<<eASSWzRD<11$

হেক্সডাম্প হিসাবে:

00000000 : 34 35 31 44 3C 31 44 41 51 58 31 44 31 31 44 33 : 451D<1DAQX1D11D3
00000010 : 41 51 58 34 63 31 44 44 51 58 34 3C 53 5A 21 47 : AQX4c1DDQX4<SZ!G
00000020 : 71 09 47 71 33 57 71 45 45 45 45 45 53 58 35 09 : q.Gq3WqEEEEESX5.
00000030 : 09 32 21 3C 3C 3C 3C 3C 3C 3C 3C 3C 65 41 53 53 : .2!<<<<<<<<<eASS
00000040 : 57 7A 52 44 3C 31 31 24                         : WzRD<11$

একটি .COM ফাইল হিসাবে সংরক্ষণ করুন এবং দিনটি বাঁচাতে এটি চালান।

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

সামান্য আরও বোধগম্য উপস্থাপনা:

org 0x100
bits 16
cpu 8086

; Assumes the following start values for registers (as per http://www.fysnet.net/yourhelp.htm):
;
;   AX = 0
;   BX = 0
;   CX = 0x00ff
;   SI = 0x100

; Change e => P and z => O
    xor al, 0x35
    xor [si+0x3c], ax
    xor [si+0x41], ax

; Fix int 0x21 and ret
    push cx
    pop ax              ; AX = 0xFF
    xor [si+0x31], ax
    xor [si+0x33], ax

; Change <1 => _0
    inc cx              ; CX = 0x100
    push cx
    pop ax              ; AX = 0x100
    xor al, 0x63        ; AX = 0x163
    xor [si+0x44], ax

; We're using DOS interrupt 0x21, function 0x09 to output the final string.

; AH must equal 0x09 to select the function.
; DS:DX must point to the $-terminated string we want to output.

; Get DX to the correct value (0x13c)
    push cx
    pop ax              ; AX = 0x100
    xor al, 0x3c        ; AX = 0x13c
    push bx
    pop dx              ; DX = 0

; We use part of the Program Segment Prefix to temporarily store the value,
; since MOVing or PUSHing AX is impossible.
; The part in question is the second File Control Block, which we will not use anyway.
    and [bx+0x71], ax
    or [bx+0x71], ax
    xor dx, [bx+0x71]   ; DX = 0x13c

; NOPs to get int 0x21 and ret on high enough addresses
    inc bp
    inc bp
    inc bp
    inc bp
    inc bp

; Set AH to the correct value. AL is set too, but is ignored by the DOS interrupt.
    push bx
    pop ax              ; AX = 0
    xor ax, 0x0909      ; AX = 0x0909

; What will become instructions int 0x21 and ret
    db 0x32, 0x21
    db 0x3c

; Padding to have the password at an address we can refer to.
    times 60-($-$$) db '<'

; Password
    pw  db  "eASSWzRD<11$"

1

বেফুঞ্জ -98, 43 +10 = 53 বাইট

"1qA·DR·WSSA·g"%,$,,,,$"s"%,,,$"c"%,%,,q

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

10 বাইট জরিমানা ,কীটি ব্যবহারের জন্য ( এটি কেন নিশ্চিত করা যায় না Shift+ কেন এটি সম্পন্ন করা যায়নি <তবে এটি নিয়ম বলে মনে হয়)। যদিও উত্সটি প্রযুক্তিগতভাবে 40 টি অক্ষরযুক্ত, তিনটি ·অক্ষর তাদের ইউটিএফ -8 এনকোডিংয়ের কারণে অতিরিক্ত তিন বাইট অবদান রাখে।


1

05AB1E , 87 86 বাইট

"."A1.$R24.$AT<.$R15>.$A21<.$R5.$.V.VD21s.V.V15>X.V"ASSW"15X.V"RD"122D<s2X.V.VTRTX.V.V

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

সম্ভবত সবচেয়ে দীর্ঘ 05AB1E কোড?

দুর্ভাগ্যক্রমে ভাষা "Q"<"পি পেতে হ্রাস কিউ" এর মতো জিনিসগুলিকে সমর্থন করে না

আমার অতিরিক্ত কী ভি।

-1 বাইটের জন্য কেভিন ক্রুইজসেনকে ধন্যবাদ।

কোড:

Build the string ".b". This is the code to turn integers to upper case letters:
"."             push "."
A               push the lower case alphabet
1.$             drop the first letter of that
R               reverse the remaining string 
24.$            drop the first 24 letters of that, so only "b" remains
AT<.$R15>.$     do the same trick for "j"
A21<.$R5.$      and for "u" 
.V              run "u" as code to turn "j" to "J"
.V              run "J" as code, to join ".", "b" to ".b"

Save that string for later use:
D               duplicate
21              push 21
s               switch the top two elements [".b", 21, ".b"]
.V              run ".b" as code, to get "U"
.V              run "U" as code, to save ".b" in X

Build password string:
15>X.V          push the 16th letter of the alphabet ("P")
"ASSW"          push "ASSW"
15X.V           push "O"
"RD"            push "RD"
122D<s2X.V      push 121, 122, "B"
.V              run that as code to push "_"
TR              push 01
TX.V            push "J"
.V              run that as code, to join everything to the desired string 

তুলনার জন্য: "PASSWORD_01" মুদ্রণের সবচেয়ে সংক্ষিপ্ততম উপায় 6 বাইট দীর্ঘ

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


" সম্ভবত সবচেয়ে দীর্ঘতম 05AB1E কোড? " না, আমার এইটি প্রায় 6 গুণ বড় । ; p নির্বিশেষে সুন্দর উত্তর। কেবলমাত্র অনুমোদিত পরিমাণ ASCII অক্ষর ব্যবহার করা শক্ত। এই চ্যালেঞ্জের জন্য অনেক সুবিধাজনক বিল্টিনগুলি অনুমোদিত নয়। :(
কেভিন ক্রুইজসেন

1
ব্যবহার করে -1 বাইট TRপরিবর্তে 1<1জন্য 01আউটপুট অংশ।
কেভিন ক্রুইজসেন

1

ইমাস, 26 বাইট (সম্ভবত + 10 = 36, বা - 2 = 24)

এই উত্তরে যে অতিরিক্ত কী প্রয়োজন তা হ'ল Esc। এটি কীবোর্ডের অর্ধেকটি যা এখনও অক্ষত, তবে কোনও কারণেই প্রশ্নে উল্লেখ করা হয়নি, তাই স্কোরকে পেনাল্টি দিতে পারে বা নাও পারে। ( Escএবং Altএ গিয়ে Emacs মধ্যে সমতুল্য হয়; Altহয় এছাড়াও কীবোর্ডের অক্ষত অর্ধেক কিন্তু প্রশ্নে উল্লেখ না করা হয়, কিন্তু বদলে অনুষ্ঠিত হবে চাপড় মেরে তাই আমি আমার অতিরিক্ত চাবি হিসাবে এটি ব্যবহার করতে পারবেন না হয়েছে এটা দুই বাইট সংরক্ষণ করবে। যদিও এটির তুলনায় একটি ছোট এনকোডিং রয়েছে Esc))

প্রোগ্রামটি নিজেই (কমাগুলি অন-দ্য ওয়্যার ফর্ম্যাটে বাইটগুলির মধ্যে সীমানা সীমাবদ্ধ করে যা ইমাসগুলি তার ইনপুট গ্রহণ করতে ব্যবহার করে):

W, S, Esc, $, D, A, Ctrl- T, S, R, W, D, Esc, $, 5, Ctrl- Q, 5, f, Ctrl- X, r, Ctrl- Space, 1, Ctrl- X, r, g, 1, Ctrl-T

বাইট গণনা প্রমাণ করার জন্য এটি কাঁচা বাইট হিসাবে এনকোডিং:

00000000: 5753 1b24 4441 1453 5257 441b 2435 1135  WS.$DA.SRWD.$5.5
00000010: 6618 7200 3118 7267 3114                 f.r.1.rg1.

(দ্রষ্টব্য: ইম্যাকস কনফিগার করা হয়েছে তার উপর ভিত্তি করে কিছু বিশদ পৃথক হতে পারে; এই উত্তরের জন্য উদ্ধৃত-চর-রেডিক্সের প্রয়োজন 16 সেট করা দরকার এবং ইমাসিকদের জন্য আমার ব্রিটিশ ইংরেজি সিস্টেমের ডিফল্ট যে বানান চেক অভিধানটি ব্যবহার করা দরকার these উভয়ই মনে হয় যুক্তিসঙ্গত কনফিগারেশন সেটিংসের মতো, তবে এটি সম্ভবত আপনার ইমাসের অনুলিপিটি অন্যরকমভাবে কনফিগার করা যেতে পারে Aএকটি আলাদা অভিধান সম্ভবত একটি 26-বাইট প্রোগ্রাম দেয়, তবে সামান্য ভিন্ন ভুল বানান ব্যবহার করার প্রয়োজন হতে পারে যাতে আমরা যে সংশোধনগুলি চেয়েছিলাম তা গ্রহণ করে নেওয়া যেতে পারে বুলেটবিহীন কীগুলি।)

ব্যাখ্যা

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

"আপনি ধরে নিতে পারেন বুলেটগুলি আসার আগে আপনার কাছে দোভাষী শেল / উত্স সম্পাদক খোলা আছে Sad দুর্ভাগ্যক্রমে আপনি কীবোর্ডটি আঘাতের আগে এটিতে কোনও কিছুই লেখেননি" ", সুতরাং আমি ধরে নিচ্ছি যে ইমাসে আমাদের একটি খালি ফাইল খোলা আছে এবং এটিতে পাসওয়ার্ড টাইপ করা দরকার। (আমাদের পরে ফাইলটি সংরক্ষণ করতে হবে এবং সম্ভবত ইমাসগুলি প্রস্থান করতে হবে, তবে এর জন্য বাইটগুলি অন্য লোকের উত্তরগুলিতে গণনা করা হচ্ছে না তাই আমি এখানেও তাদের গণনা করছি না It's এটি বাম দিকের দিকটি ব্যবহার করে সম্পূর্ণভাবে অক্ষম কীবোর্ড, যদিও, Ctrl- X, Ctrl- S, Ctrl- X, Ctrl- C।)

এটি একবারে একটি আদেশ (বা অনুরূপ আদেশের ব্লক) নেওয়া:

  • W, S: WSনথিতে প্রবেশ করান ।
  • Esc, $: বানান পরীক্ষককে ডাকুন। WSসত্যিকারের শব্দ নয়, তবে এটি প্রচুর দুটি দ্বি-বর্ণের শব্দ খুঁজে পেয়েছে।
  • D: বানান পরীক্ষক ব্যবহার করে, সঠিক WSকরুন PS। (যখন বানান পরীক্ষককে ব্যবহার করে আহ্বান করা হয় Alt- $যেমনটি এখানে ঘটেছে ( Escএবং Altএটি ইমাকসের সমতুল্য) তখন এটি কেবল একটি শব্দ পরীক্ষা করে, সুতরাং এটি করার পরে এটি নিষ্ক্রিয় হয়))
  • A: sertোকানো A, দেওয়া PSA
  • Ctrl- T: প্রদান করে পূর্বের দুটি চরিত্রকে অদলবদল করুন PAS
  • S, R, W, D: প্রকার SRWD, দান PASSRWD
  • Esc, $, 5, আমরা বানান-পরিক্ষক আবার ডাকা, কারণ আমরা আমাদের বানান ভুল সংশোধন করতে চান PASSRWDমধ্যে PASSWORD। নোট করুন যে আমরা আমাদের প্রথম প্রয়াসে যে শব্দটি চাই তা অনুমান করতে পারি না, এটির মতোই PASSWRD, কারণ নিকটতম আসল শব্দটি গ্রহণ করার মূল চাবিকাঠিটি 0আমরা চাপতে পারি না। ফলস্বরূপ, সামান্য আরও চূড়ান্ত ভুল বানানটি PASSRWDআমরা শব্দটি পজিশনে push নম্বরে ঠেলাতে ব্যবহার করি যেখানে আমরা এটি গ্রহণ করতে পারি।
  • Ctrl- Q, 5, f: চরিত্র কোড U + এ 5f, অর্থাত্ সঙ্গে অক্ষর ঢোকান _। দস্তাবেজটি এখন PASSWORD_পড়বে (বা আমরা যখন পরবর্তী কমান্ডটি টাইপ করতে শুরু করব তখনই হবে; এর আগে, আমরা অন্য হেক্স ডিজিট টাইপ করলে আন্ডারস্কোরটি উপস্থিত হবে না)।
  • Ctrl- X, r, Ctrl- Space, 1: রেজিস্টার 1. সাম্প্রতিক কার্সারের অবস্থানে (ফাইল শুরুর আপেক্ষিক) সঞ্চয় করুন কিছু উদ্ভট কারণে, এই, 1-ইন্ডেক্স তাই (9 অক্ষর এতদূর লেখার) কার্সার অবস্থানে নেই 10
  • Ctrl- X, r, g, 1: দস্তাবেজে রেজিস্টার 1 বিষয়বস্তুর কপি করুন। এটি এখন পড়ে PASSWORD_10
  • Ctrl- T: কার্সারের আগে দুটি অক্ষর অদলবদল করুন। আমাদের এখন PASSWORD_01যেমন প্রশ্ন জিজ্ঞাসা করা হয়েছে তেমন ।

যদি আমাদের ব্যবহারের অনুমতি দেওয়া হয় তবে আমরা Altসম্ভবত "ইনভয়েল স্পেলচেকার" কমান্ডটি a4এটিকে বানান না করে একক বাইট হিসাবে এনকোড করতে পারি 1b 24; এটি দু'বার প্রদর্শিত হয়, যাতে সঞ্চয়ের দুটি বাইট হয়। (বেশিরভাগ আধুনিক টার্মিনালগুলি ইউটিএফ -8 এর সাথে সংঘর্ষ এড়াতে - এর 1b 24জন্য এনকোডিং হিসাবে ব্যবহার করে তবে সময়ে সময়ে এনকোডিংয়ের মুখোমুখি হয়, যা কখনও কখনও কনফিগারেশন বিকল্প হিসাবে উপলব্ধ))Alt$a4

সম্ভাব্য বাইট সঞ্চয় সম্ভবত সংশোধন করতে গল্ফিয়ার ভুল বানান জড়িত। PSASWRDটাইপ করতে একটি বাইট সংক্ষিপ্ত হবে, তবে দুর্ভাগ্যক্রমে, বানান যাচাইকারী এটি PASSWORDথেকে আকাঙ্ক্ষা করতে সক্ষম বলে মনে হয় না , তাই PASSRWDআমি এ পর্যন্ত খুঁজে পেয়েছি সেরা পদ্ধতির। অর্জনের 10জন্য নিবন্ধভিত্তিক পদ্ধতির বিষয়টিও হাস্যকরভাবে অযৌক্তিক, তবে ইমাসে কোথাও থেকে সংখ্যা তৈরি করার অনেকগুলি উপায় নেই এবং 0অন্যথায় ধরে রাখার জন্য এটি একটি বেদনাদায়ক চরিত্র। (কমপক্ষে আশ্চর্যজনকভাবে বেশ কয়েকটি কার্যকর কাকতালীয় ঘটনা ঘটেছিল: কার্সারটি কেবলমাত্র অবস্থানে শেষ হওয়ার জন্য ঘটছে 10, যার মধ্যে 0প্রয়োজনের সময় ডান রয়েছে ; এবং এ্যাম্যাকস অপ্রয়োজনীয়কে গ্রহণ করে )g নথিতে কোনও নিবন্ধের বিষয়বস্তু সন্নিবেশ করানোর জন্য রেজিস্ট্রার অপারেশনকে , আরও স্বজ্ঞাত ছাড়াওi

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