এই কী সিফারটি প্রয়োগ করুন


13

এই কী সিফারটি প্রয়োগ করুন

লক্ষ্য

নির্দিষ্ট সাইফার বাস্তবায়নের জন্য অ্যালগরিদম (অ্যালগোরিদম বিভাগে ব্যাখ্যা করা) ব্যবহার করুন।

প্রোগ্রামটি অবশ্যই STDIN বা নিকটতম উপলব্ধ সমতুল্য থেকে ইনপুট পড়তে হবে, সিফারেক্সট এবং একটি কী তৈরি করতে অ্যালগরিদম ব্যবহার করুন।

সিফারেক্সট এবং কীটি STDOUT বা নিকটতম উপলব্ধ সমতুল্যতে লেখা হবে। যেকোন বিন্যাসের অনুমতি রয়েছে, যতক্ষণ না এটি সিফেরেক্সট এবং কীটি আউটপুট করে।

অ্যালগরিদম

স্ট্রিংয়ের অক্ষরগুলিকে সংশ্লিষ্ট ASCII মানগুলিতে রূপান্তর করুন। উদাহরণ স্বরূপ:

Hello -> 72 101 108 108 111

এর পরে, আপনাকে 0-9 সীমাতে এলোমেলো সংখ্যার স্ট্রিং যতক্ষণ না একটি কী তৈরি করতে হবে।

Hello -> 62841

স্ট্রিংয়ের ASCII মানগুলিতে এলোমেলো সংখ্যা ক্রমের মধ্যে পূর্ণসংখ্যা যুক্ত করুন। উপরের উদাহরণগুলিতে, 72 হয়ে যাবে 78, এবং 101 হয়ে যাবে 104।

72 + 6 = 78, 101 + 2 = 103, 108 + 8 = 116, etc

এরপরে নতুন মানগুলিকে অক্ষরে রূপান্তর করুন। উপরের উদাহরণগুলিতে পাঠ্যটি Helloহয়ে গেছে Ngtpp

উদাহরণ

(এইগুলি কেবল আউটপুট কেমন দেখতে পারে তার উদাহরণ The আউটপুট পৃথক হতে পারে এবং ভিন্ন হতে পারে))

Hello World

Lfrlu)_supg
41606984343

This will be encoded

Zhjs$~koo gj$iuhofgj
60104723305544750226

বিধি

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

(এটি আমার প্রথম চ্যালেঞ্জগুলির মধ্যে একটি, যদি এতে কিছু সমস্যা থাকে তবে আমি কীভাবে এটি উন্নত করতে পারি তা নির্দ্বিধায় বলুন।)


5
এই চ্যালেঞ্জটি আমার কাছে বেশ কয়েকটি চিন্তাভাবনা বাদে ভাল দেখাচ্ছে। 1. পুরো প্রোগ্রামের পরিবর্তে কোনও ফাংশন অনুমোদিত? একটি সম্পর্কিত প্রশ্ন মুদ্রণের পরিবর্তে মানগুলি ফেরত দেওয়া যেতে পারে? ২. আপনি বলেছেন preferably with the format (ciphertext)\n(key)."পছন্দের বৈশিষ্ট্যগুলি" এবং কোড গল্ফ খুব ভালভাবে মেশে না। আপনার সেই বাধ্যতামূলক করা উচিত বা অন্য আউটপুট ফর্ম্যাটগুলির অনুমতি দেওয়া উচিত। ৩. কী কী ফাঁকা ছাড়াই মুদ্রণ করতে হবে? এটি তালিকার বিন্যাসে মুদ্রণ সম্পর্কে কী [0, 5, 2, ...]?
জেমস

কীটিতে নেতৃস্থানীয় জিরো থাকতে পারে?
দ্য বাইকিংভিকিং

1
প্রথম প্রথম চ্যালেঞ্জ তবে আমি কঠোর আইও ফর্ম্যাটগুলিতে নিশ্চিত নই। সাধারণত ফাংশন অনুমোদিত হয় এবং সাধারণত উত্তর গ্রহণযোগ্য আইও পদ্ধতিগুলির মধ্যে একটি থেকে পড়তে পারে। এর মধ্যে আইটেমগুলির সাথে অ্যারে আউটপুট করা অন্তর্ভুক্ত রয়েছে
ডাউনগোট

1
কীটির অঙ্কগুলি অভিন্ন বিতরণ দিয়ে উত্পন্ন করতে হবে?
ডেনিস

1
আহ ... 101 + 2 হ'ল 103, 104 নয়: :-)
ইয়েটিসিজিএন

উত্তর:


5

জেলি , 12 9 বাইট

⁵ṁX€’Ṅ+OỌ

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

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

⁵ṁX€’Ṅ+OỌ  Main link. Argument: s (string)

⁵             Set the return value to 10.
 ṁ            Mold; create an array of 10's with the length of s.
  X€          Pseudo-randomly pick a integer between 1 and 10, for each 10.
    ’         Decrement, so the integers fall in the range [0, ..., 9].
     Ṅ        Print the key, as an array, followed by a linefeed.
      +O      Add the integers to the ordinals (code points) of s.
        Ọ     Unordinal; convert back to characters.

5

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

একটি বাগ নির্দেশ করার জন্য @ রডকে ধন্যবাদ

from random import*
def f(x):l=10**len(x);k=str(randint(0,l-1)+l)[1:];print(''.join(chr(ord(i)+int(j))for i,j in zip(x,k))+'\n'+k)

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

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

from random import*  Import everything from the random module
def f(x):            Function with input string x
l=10**len(x)         Define l for later use as 10^length(x)
randint(0,l-1)+l     Generate a random integer in the range [0, l-1] and add l, giving a
                     number with l+1 digits...
k=str(...)[1:]       ...convert to a string and remove the first character, giving a key of
                     length l that can include leading zeroes, and store in k
for i,j in zip(x,k)  For each character pair i,j in x and k:
chr(ord(i)+int(j))    Find the UTF-8 code-point (same as ASCII for the ASCII characters),
                      add the relevant key digit and convert back to character
''.join(...)         Concatenate the characters of the ciphertext
print(...+'\n'+k)    Add newline and key, then print to STDOUT

আইডিয়নে চেষ্টা করে দেখুন


আপনার কী জেনারেটর 0 দিয়ে শুরু কীগুলি উত্পন্ন করে না 10 এর গুণক দ্বারা সীমানা বৃদ্ধি করে এবং 1 ম সংখ্যাটি সরিয়ে ফিক্স করা উচিত: m=10**len(x);k=str(randint(m,m*10))[1:];এবং আপনি এমনকি প্রক্রিয়াতে একটি বাইট সংরক্ষণ করুন সি:
রড

@ রড বাগটি নির্দেশ করার জন্য ধন্যবাদ। এটি কোনও বাইট সংরক্ষণ করবে না, যেহেতু randintঅন্তর্ভুক্তিমূলক, এর অর্থ আপনার করা দরকার m*10-1। আমি ঠিক একই বাইট গণনার জন্য এটি ঠিক করার একটি উপায় চিন্তা করেছি।
দ্য বাইকিংভিকিং

3

পাইথ - 16 বাইট

আউটপুট ফর্ম্যাটগুলিতে ওপি দ্বারা সিদ্ধান্তের অপেক্ষায়।

sCM+VCMQKmOTQjkK

টেস্ট স্যুট


আমি ফরম্যাটে সিদ্ধান্ত নিয়েছি।
এম 654

3

আসলে, 17 বাইট

;`X9J`M;(O¥♂cΣ@εj

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

ব্যাখ্যা:

;`X9J`M;(O¥♂cΣ@εj
;                  dupe input
 `X9J`M            for each character in input copy:
  X9J                discard the character, push a random integer in [0, 9]
       ;           duplicate the offset array
        (O         bring input to top of stack, ordinal array
          ¥♂c      pairwise addition with offset array, turn each ordinal into a character
             Σ     concatenate
              @εj  concatenate the copy of the offset array


2

এমএটিএল, 13 বাইট

"10r*]v!kGy+c

আউটপুটটি দেখতে এটির মতো দেখাচ্ছে:

9 5 8 2 1
Qjtnp

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

ব্যাখ্যা:

"    ]          % For each character:
 10             % Push a 10 onto the stack
   r            % Push a random float in [O, 1)
    *           % Multiply. This essentially the same thing as pushing a number in [0, 10)
      v!k       % Join all of these together, and take the floor
         G      % Push the input again
          y     % Duplicate the array of random numbers
           +    % And add these together. Since MATL treats strings as an array of chars, we don't need to explicitly convert types
            c   % Display as string

আমি নিশ্চিত না যে এটি সঠিক ফর্ম্যাট কিনা ...
লিকি নুন

@ লিকি নুন আমি নিয়মগুলি কিছুটা পরিবর্তন করেছি।
এম 654

@ m654 আপনি কোথায় বলেছিলেন যে মানগুলির মধ্যে ফাঁক থাকতে পারে?
Leaky নুন

@ ল্যাকইনুন মূলত তাদের বিরুদ্ধে একটি বিধি ছিল তবে আমি তা সরিয়ে দিয়েছি।
এম 654

1
লুপটি ব্যবহার করার জন্য ভাল ধারণা। এটি আসলে একাধিক ইনপুট সংস্করণ rবাYr
লুইস মেন্ডো

2

পাওয়ারশেল ভি 2 +, 79 77 বাইট

param($n)-join(($x=[char[]]$n|%{0..9|Random})|%{[char]($_+$n[$i++])});-join$x

ইনপুট নেয় $n, প্রতিটি চরিত্রের উপর লুপ করে এবং প্রতিটি পুনরাবৃত্তি Randomথেকে একটি উপাদান পায় 0..9। এই সংখ্যাগুলিকে (অ্যারে হিসাবে) স্টোর করুন $x। যে পাইপগুলি অন্য লুপে অ্যারে হয়। প্রতিটি পুনরাবৃত্তি, বর্তমান উপাদানটি নেয় $_, এটিকে $n( স্থায়ী চর-টু-ইন্ট কাস্ট) বাইরে কাটা অবস্থানগত চরটিতে যুক্ত করে , তারপরে পুনরায় কাস্ট করে [char]। পাইপলাইনে রেখে দেয়। এটি পেরেন্সে আবদ্ধ এবং -joinশব্দের সাথে একত্রিত হন। পাইপলাইনে রেখে গেছে উপরন্তু, সংখ্যা $xহয় -joinএকসঙ্গে ed এবং পাইপলাইন রেখে। এগুলি কার্যকরভাবে Write-Outputশেষের সাথে স্পষ্টভাবে মুদ্রিত হয় , যার ফলস্বরূপ সেগুলি ডিফল্টরূপে একটি নতুন লাইনে মুদ্রিত হয়।

উদাহরণ

PS C:\Tools\Scripts\golfing> .\implement-this-key-cipher.ps1 'Hello World!'
Lhoot(Yt{mf"
433358259121

2

সি #, 252 247 245 232 216 বাইট

অন্যান্য সমাধানগুলির তুলনায় আকারটি বেশ খারাপ তবে তবুও ...

using System;using System.Linq;class p{static void Main(){var c="";var i=Console.ReadLine();var r=new Random();for(int b=0;b++<i.Count();){int d=r.Next(10);Console.Write((char)(i[b]+d));c+=d;}Console.Write("\n"+c);}}

এটি কোনও কোডগল্ফের কাছে আমার দ্বিতীয় উত্তর এবং আমি সি # তে বিবেচনা করার পক্ষে যথেষ্ট শিক্ষানবিস তাই কীভাবে এটি আরও সংক্ষিপ্ত করা যায় তা শুনে আমি কৃতজ্ঞ হব :)

Ungolfed:

using System;
using System.Linq;

class p
{
    static void Main()
    {
        var c = "";
        var i = Console.ReadLine();
        var r = new Random();
        for (int b = 0; b++ < i.Count();)
        {
            int d = r.Next(10);
            Console.Write((char)(i[b] + d));
            c += d;
        }
        Console.Write("\n" + c);
    }
}
  • @ ফ্রাইআমডেজিগম্যানকে 5 টি বাইট সংরক্ষণ করা হয়েছে
  • 2 টি বাইট সংরক্ষিত হয়েছে @ ল্যাম্বগোটকে ধন্যবাদ
  • staticক্লাস পি থেকে সরিয়ে 7 বাইট সংরক্ষণ করা হয়েছে
  • 24 বাইট সংরক্ষণ করেছেন @ মিল্ককে ধন্যবাদ

1
কৌশলটি অন্য ভাষার সাথে তুলনা করা নয়;) আমি সি # গল্ফের বিষয়ে বিশেষভাবে পারদর্শী নই, তবে আপনি কি b++<i.Count()তৃতীয় ধারাটি খালি রেখে দিতে পারেন ? এছাড়াও, আমি মনে করি না যে আপনার একটি চলন্ত নিউলাইন দরকার, যাতে শেষ কলটি WriteLineতার Writeপরিবর্তে হতে পারে ।
FryAmTheEggman

আমি সি # তেও পারদর্শী নই তবে আমি মনে করি আপনি = r.Next (10) কে d এর ঘোষণাপত্রের দিকে নিয়ে যেতে পারেন এবং লেখায় একটি বন্ধনী সেট করে রাখতে পারেন। বা এলোমেলোভাবে কোনও int ফিরিয়ে দেয় না যাতে আপনি এটি করতে না পারেন?
দ্য ল্যাম্বগোট

আমি মনে করি আমি এটি করতে পারি, আমাকে যাচাই করতে দিন
টম ডুডলার

আপনি এর সাথে প্রকারগুলি প্রতিস্থাপন করতে পারেন var। ie- var c=পরিবর্তে string c=কয়েক বাইট শেভ।
দুধ

Console.ReadLine()স্ট্রিং হিসাবে ফলাফল ছেড়ে না কেন ? i.Lengthএর চেয়ে সংক্ষিপ্ত i.Count(), আপনার সিস্টেম.লিনক প্রয়োজন হবে না। স্ট্রিংয়ের একটি চর সূচক রয়েছে। এছাড়াও তৈরি নতুন এলোমেলো লুপ বস্তু কম বাইট: new Random().Next(10)
দুধ

2

সিজেম, 11 বাইট

Nq{Amr_o+}/

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

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

N            Push a linefeed on the stack.
 q           Read all input from STDIN and push it on the stack.
  {      }/  For each character in the input:
   Amr       Pseudo-randomly pick an integer in [0 ... 9].
      _o     Print a copy.
        +    Add the integer to the character.
             (implicit) Print the linefeed, followed by the modified characters.


2

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

সি হ'ল একটি ফাংশন যা এনক্রিপ্ট করা পাঠ্য এবং কীটি প্রদান করে

from random import*
c=lambda t:map(''.join,zip(*[(chr(a+b),str(b))for a,b in((ord(i),randint(0,9))for i in t)]))

এখানে একটি কোড যা একই জিনিসটি করে এবং এটি আরও কিছুটা পাঠযোগ্য

def encrypt(text):
    # keep the codes of the letters in the input and a random key
    # that will be used later to encrypt this letter
    letter_and_key = ((ord(letter),randint(0,9)) for letter in text)

    # encrypt the letter and keep the key used as a string
    output_and_key = [(chr(letter_code+key), str(key))
                      for letter_code, key in letter_and_key]

    # At this point the values are kept in the format:
    # [(firstletter, firstkey), (secondletter, secondkey), ...]

    # to reorder the list to be able to output in the format "text key"
    text, key = map(''.join, zip(*output_and_key))

    # same as print(*output_and_key)
    return text, key

আউটপুট:

>>> text, key = c('Hello World')
>>> print(text, key, sep='\n')
Liuot#`oylk
44935390707

এই সাইটে আপনাকে স্বাগতম!
জেমস 21

1

পিএইচপি, 63 86 82 বাইট

সম্পাদনা করুন: কীটি মুদ্রণ করতে ভুলে গেছেন ...

আমাকে 4 বাইট বাঁচানোর জন্য অ্যালেক্স হাভান্স্কিকে ধন্যবাদ।

for(;$i<strlen($a=$argv[1]);$s.=$r)echo chr(ord($a[$i++])+$r=rand(0,9));echo"
$s";

কমান্ড লাইন আর্গুমেন্টের মাধ্যমে ইনপুট দেওয়া হয়। স্ট্রিংয়ে প্রতিটি চরিত্র নেয় এবং 0-9 থেকে তার এএসসিআইআই কোডে একটি এলোমেলো int যোগ করে, তারপরে কোডটিকে ASCII এ আবার রূপান্তর করে। প্রতিটি এলোমেলো সংখ্যা সংযুক্ত করা হয় $s, যা শেষে মুদ্রিত হয়।


আপনাকে কীটিও মুদ্রণ করতে হবে।
অ্যালেক্স হাওয়ানস্কি

আপনি $s.=$rদ্বিতীয় আধাটির পরে লুপের জন্য রাখতে পারেন, একটি বাইট সংরক্ষণ করুন কারণ আপনি এর পিছনে থাকা অর্ধেকে ফেলে দিতে পারেন। তারপরে আপনার লুপটি কেবলমাত্র একটি বিবৃতি হবে যাতে আপনি আরও 2 টি বাইট সংরক্ষণ করে মোড়কের ধনুর্বন্ধনীগুলি কাটতে পারেন। তারপরে শেষে, আপনি $sউদ্ধৃত স্ট্রিংটির ভিতরে .অপারেটরটিকে আরও একটি বাইটের জন্য সংরক্ষণ করতে পারবেন । :)
অ্যালেক্স হাওয়ানস্কি

@ অ্যালেক্সহোয়ানস্কি: এটা খুব সত্য। ধন্যবাদ
বিড়াল বিড়াল

1

জে, 32 বাইট

<@:e,:~[:<[:u:3&u:+e=.[:?[:$&10#

অজগর সমতুল্য:

from random import randint
def encrypt(message):
    rand_list = list(map(lambda x: randint(0, 9), range(len(message))))
    return (''.join(list(map(lambda x,y: chr(x+y), rand_list, map(ord, message)))), rand_list)


0

পার্ল, 65 বাইট

for(split'',$ARGV[0]){$;.=$a=int rand 9;$b.=chr$a+ord}say"$b\n$;"

শেষে নতুন লাইন ছাড়া কীভাবে ইনপুট পাবেন তা নির্ধারণ করতে আমাকে কিছুক্ষণ সময় নিল। কমান্ড লাইন আর্গ হিসাবে গ্রহণ করে


আপনার সমাধানে কিছু সমস্যা আছে। এসটিডিআইএন ফর্মটি ইনপুটটি পড়া হয় না, $;খালি শুরু হয় না তাই এটি পুরাতন সামগ্রীটি মুদ্রণ করে এবং র্যান্ড কখনই উত্পন্ন করতে পারে না They এগুলি ঠিক করা সহজ এবং এসটিডিআইএন ব্যবহার করা আপনার কোডকে আরও ছোট করে তুলবে :-)
টন হসপেল

@ টনহোস্পেল সাধারণত ইনপুট প্রয়োজনীয়তাগুলি আলগা হয় এবং এসটিডিআইএন-এর চেয়ে আরগগুলি গ্রহণযোগ্য হয় এবং এসটিডিআইএন থেকে ইনপুট নেওয়ার সময় আরও কম হয়, এর থেকে নতুন লাইনটি সরিয়ে ফেলতে এটি দীর্ঘতর হয়। এবং র‌্যান্ড <9 সংখ্যাটি উত্পন্ন করার সময়, পার্লের কোনও মেঝে না দিয়ে তার অভ্যন্তরীণ পদ্ধতির রাউন্ডগুলি> = 8.5 9 হিসাবে শেষ হওয়া উচিত
দ্য ল্যাম্বগোট

ইনপুট প্রয়োজনীয়তা সাধারণত আলগা হয়, কিন্তু এখানে এটি ছিল না। Stdin থেকে অ সম্পর্কে newline পথ সহজ: <>=~/./g। এবং না, intপার্ল 0 এর দিকে ছাঁটাই, এটি গোল হয় না। perl -wle 'print int 8.6'ফলাফল8
টন হসপেল

0

পাইথন 2, 84 99 বাইট

def f(x):y=`id(x)**len(x)`[1:len(x)+1];return''.join(map(chr,[ord(a)+int(b)for a,b in zip(x,y)])),y

id()এলোমেলো সংখ্যা উত্পন্ন করতে স্ট্রিংয়ের মান ব্যবহার করে ।

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


আপনাকে কী এবং সিফেরেক্সটেক্সও আউটপুট করতে হবে।
দ্য বাইকিংভিকিং

@ দ্য বাইকিংভাইক জানেন না যে আমি কীভাবে এটি মিস করেছি। ধন্যবাদ - স্থির
অ্যাটলোলজিস্ট

আমি মনে করি এটি আমার পাইথন উত্তরের পূর্ববর্তী সংস্করণ হিসাবে একই সমস্যা রয়েছে; এটি কখনই নেতৃস্থানীয় জিরোগুলির সাথে কী তৈরি করে না।
দ্য বাইকিংভিকিং

@ দ্য বাইকিংভিকিং আবার স্থির হয়েছে
অ্যাটলোলজিস্ট

পরিবর্তন map(chr,[ord(a)+int(b)for a,b in zip(x,y)])করার জন্য map(lambda x,y:chr(ord(x)+int(y)),x,y)? এটি কিছু সঞ্চয় করা উচিত
ljeabmreosn

0

সেনভা , 74 বাইট

এখানে আমি তৈরি করেছি সবচেয়ে স্বল্পতম প্রোগ্রাম:

2'(`>0.>{@}0'{v}2-2'0,{@}1'{v}0'{+}{'}9%+{^}{1-}1'"{+}{~}>$10.~0'2+"0,-:>$

একটু ব্যাখ্যা? (দ্রষ্টব্য: বিএম এর অর্থ ব্যাক-মেমরি ):

// === Input and informations storing ===

2'  // Go to the 3rd cell (the two first will be used to store informations)
(   // Ask the user for a string (it will be stored as a suite of ASCII codes)
`   // Go the end of the string
>   // Make a new cell
0.  // Put a 0 to mark the end of the string
>   // Make a new cell, here will be stored the first random number
{@} // Store its adress in BM
0'  // Go to the 1st cell
{v} // Paste the adress, now the 1st cell contains the adress of the first random number
2-  // Subtract 2 because the string starts at adress 2 (the 3rd cell)
2'  // Go to the 3rd cell (where the string begins)

// === String encryption and displaying ===

0,  // While the current cell doesn't contain 0 (while we didn't reach the string's end)
  {@}  // Store the character's adress into the memory
  1'   // Go to the 2nd cell
  {v}  // Paste the value, now the 1st cell contains the adress of the current char
  0'   // Go to the 1st cell
  {+}  // Add the adress of the first random number to the current char adress
  {'}  // Go to this adrses
  9%+  // A random number between 0 and 10
  {^}  // Store this number in BM
  {1-} // Decrease BM (random number between 0 and 9)
  1'   // Go to the 1st cell
  "    // Go to the adress pointed by the cell (the adress of the current char)
  {+}  // Add it to the random number value
  {~}  // Display it as an ASCII character
  >    // Go to the next cell (the next character)
$   // End of the loop
10. // Set the new line's ASCII code into the current cell (which is now useless, so it can be overwritten)
~   // Display the new line
0'  // Go to the first cell
2+  // Add 2 to the adress, because we are not in the string loop : we cancel the 2 substraction
"   // Go to the pointed adress (the first random number's one)

// === Display the random numbers ===

0,  // While we didn't reach the end of the random numbers suite
    // That was why I stored numbers between 1 and 10, the first equal to 0 will be the end of the suite
  - // Decrease it (number between 0 and 9)
  : // Display the current random number as an integer
  > // Go to the next cell (the next number)
$ // End of the loop

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


0

সি #, 174 বাইট

using static System.Console;class b{static void Main(){var c=new System.Random();var d="\n";foreach(var e in ReadLine()){var f=c.Next(10);Write((char)(e+f));d+=f;}Write(d);}}

Ungolfed:

using static System.Console;

class b
{
    static void Main()
    {
        var c = new System.Random();
        var d = "\n";

        foreach (var e in ReadLine())
        {
            var f = c.Next(10);
            Write((char)(e + f));
            d += f;
        }

        Write(d);
    }
}

খুব সোজা, সত্যি।


0

পার্ল 6: 55 বা 70 বাইট

একটি অনামী ফাংশন যা একটি স্ট্রিং প্যারামিটার নেয় এবং দুটি স্ট্রিংয়ের তালিকা দেয় (54 টি অক্ষর, 55 বাইট) :

{my @n=^9 .roll(.ords);(.ords Z+@n)».chr.join,@n.join}

একটি প্রোগ্রাম যা STDIN থেকে পড়ে এবং STDOUT এ লিখিত (69 অক্ষর, 70 বাইট) :

my @a=get.ords;my @n=^9 .roll(@a);say (@a Z+@n)».chr.join;say @n.join
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.