দুটি গুণকে "গুণ" করুন


29

এটি সম্প্রতি আমার ভাষাতে ++ যোগ করে এমন একটি ক্রিয়াকলাপ দ্বারা অনুপ্রাণিত হয়েছিল । সুতরাং আমি অ্যাড ++ এ একটি সংক্ষিপ্ত উত্তর জমা দেব তবে এটি জিতলে আমি তা গ্রহণ করব না (এটি ন্যায়সঙ্গত হবে না)

আপনি যখন সংখ্যাটি গুণতে পারবেন তবে স্ট্রিং নয় তখন কি এটি ঘৃণা করবেন না? সুতরাং আপনি যে সঠিক করা উচিত, তাই না?

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

আপনি কিভাবে স্ট্রিং গুণ? আমি আপনাকে বলব!

দুটি স্ট্রিংকে গুণতে, আপনি দুটি স্ট্রিং নিন এবং প্রতিটি অক্ষর তুলনা করুন। সর্বাধিক কোড পয়েন্ট সহ অক্ষরটি আউটপুটে যুক্ত হয়। যদি তারা সমান হয় তবে আউটপুটটিতে কেবল অক্ষর যুক্ত করুন।

স্ট্রিংগুলি দৈর্ঘ্যে সমান হওয়ার নিশ্চয়তা নেই। দৈর্ঘ্য পৃথক হলে চূড়ান্ত স্ট্রিংয়ের দৈর্ঘ্য হ'ল সংক্ষিপ্ততম স্ট্রিংয়ের দৈর্ঘ্য। ইনপুটটি সর্বদা ছোট হাতের অক্ষরে থাকবে এবং 0x20 - 0x7Eবড় হাতের অক্ষরগুলি বাদ দিয়ে মুদ্রণযোগ্য ASCII ব্যাপ্তি ( ) এর কোনও অক্ষর থাকতে পারে ।

আপনি যেকোন যুক্তিসঙ্গত বিন্যাসে আউটপুট দিতে পারেন, যেমন স্ট্রিং, তালিকা ইত্যাদি বুদ্ধিমান হন, পূর্ণসংখ্যা এই চ্যালেঞ্জের আউটপুট দেওয়ার কোনও বুদ্ধিমান উপায় নয়।

ইনপুট hello,এবং সাথে world!, এটি এটি কিভাবে কাজ করে

hello,
world!

w > h so "w" is added ("w")
o > e so "o" is added ("wo")
r > l so "r" is added ("wor")
l = l so "l" is added ("worl")
d < o so "o" is added ("worlo")
! < , so "," is added ("worlo,")

সুতরাং জন্য চূড়ান্ত আউটপুট hello,এবং world!হবে worlo,!

আরও পরীক্ষার কেস

(পদক্ষেপ ছাড়াই)

input1
input2 => output

programming puzzles & code golf!?
not yet graduated, needs a rehaul => prtgyetmirgduuzzlesneedsde rolful

king
object => oing

blended
bold => boln

lab0ur win.
the "super bowl" => the0usuwir.

donald j.
trumfefe! => trumlefj.

এটি একটি তাই সংক্ষিপ্ততম কোড জয়! Luok!


35
এটি স্ট্রিংগুলির এলিমেন্টওয়াই সর্বাধিক? এটি গুণকের মতো কিছু মনে হয় না।
xnor

5
নিতপিক: পিপিসিজি স্নাতক হয়েছে, আমরা এখনও একটি নতুন নকশা পাইনি।
ডেনিস

উত্তর:


53

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

zipWith max

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

বেশি কিছু বোঝাতে হবে না।


7
এবং আমি ভেবেছিলাম ম্যাথেমেটিকার অদ্ভুত বিল্ট-ইন রয়েছে
মিঃ এক্সকডার

@ মিঃ এক্সকোডার ম্যাথেমেটিকার জিপ রয়েছে, এটি ম্যাপথ্রেড বলে
michi7x7

2
@ মিঃ এক্সকোডার আসলে zipWithখুব অদ্ভুত নয়। এটি মোটামুটি সাধারণ ক্রিয়ামূলক আদিম। দুটি তালিকার একসাথে "জিপিং" করার ধারণাটি অনেক সমস্যার মধ্যে আসে এবং আপনি এটিটি সম্পাদন করার পরে আপনি প্রায়শই ফলস্বরূপ 2-উপাদান আইটেমগুলিতে কিছু ফাংশন প্রয়োগ করতে চান, সুতরাং "সহ" অংশটি।
জোনাহ

8

05 এ বি 1 ই , 4 বাইট

øΣà?

05AB1E এনকোডিং ব্যবহার করে । এটি অনলাইন চেষ্টা করুন!


আমার মনে হয় ø€àকাজ করা উচিত, তবে তা হয় না।
ম্যাজিক অক্টোপাস আরন

উত্তরের চেয়ে কোনও প্রশ্নের মতো দেখতে আরও বেশি লাগে
স্ট্যান স্ট্রাম

6

পার্ল 6 , 22 বাইট

{[~] [Zmax] @_».comb}

বোনাস হিসাবে, এটি কেবল দুটি নয়, বহু সংখ্যক গ্রহণ করে।


6

জাপট , 16 বাইট

ñl g îUy ®¬ñ oÃq

এটি অনলাইন পরীক্ষা! দুটি স্ট্রিংয়ের অ্যারে হিসাবে ইনপুট নেয়।

সর্বনিম্ন এবং সর্বাধিক বিল্ট-ইনগুলির অভাব এখানে জাপটকে আঘাত করেছে, তবে এটি কিছুটা শালীন স্কোরটি সরিয়ে ফেলতে সক্ষম ...

ব্যাখ্যা

 ñl g îUy ®   ¬ ñ oà q
Uñl g îUy mZ{Zq ñ o} q
                        // Implicit: U = input array     ["object", "king"]
       Uy               // Transpose the strings of U.   ["ok", "bi", "jn", "eg", "c ", "t "]
          mZ{      }    // Map each string Z to
             Zq ñ o     //   the larger of the two chars. (Literally Z.split().sort().pop())
                        //                               ["o", "i", "n", "g", "c", "t"]
                     q  // Join into a single string.    "oingct"
Uñl g                   // Sort the two input strings by length and take the shorter.
      î                 // Trim the previous result to this length.
                        //            "king"î"oingct" -> "oing"
                        // Implicit: output result of last expression

6

জেলি , 5 বাইট

żœ-"«

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

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

żœ-"«  Main link. Arguemts: s, t (strings)

ż      Zipwith; form all pairs of corresponding characters from s and t.
       If one of the strings is longer than the other, its extra characters are 
       appended to the array of pairs.
    «  Dyadic minimum; get all minima of corresponding characters.
       This yields the characters themselves for unmatched characters.
 œ-"   Zipwith multiset subtraction; remove a single occurrence of the minimum from
       each character pair/singleton.
       This yields the maximum for pairs, but an empty string for singletons.

উদাহরণ

আসুন s = মিশ্রিত এবং t = সাহসী

żফলন ["bb", "lo", "el", "nd", 'd', 'e', 'd']। শেষ তিনটি উপাদান হ'ল অক্ষর।

«ভেক্টরাইজিং, ডায়ডিক ন্যূনতম, তাই এটি ফলন করে ['b', 'l', 'e', 'd', 'd', 'e', 'd']

œ-"প্রথম অ্যারেতে n স্ট্রিং / চরিত্র থেকে দ্বিতীয় অ্যারেতে n অক্ষরের ঠিক এক উপস্থিতি সরিয়ে দেয় , ফলন দেয় । হয় multiset বিয়োগ পরমাণু এবং দ্রুত করে তোলে vectorize।["b", "o", "l", "n", "", "", ""]œ-"

মুদ্রিত হলে, এটি কেবল বোলান পড়ে ।


সুতরাং, এটি জিপিং করা হচ্ছে, তারপরে কোনও কিছুর বহুবিধ পার্থক্য নিল, তারপরে মীমাংসিত অর্থের কিছু সুন্দর ডাবল উদ্ধৃতি রয়েছে এবং অবশেষে সর্বনিম্ন। ভাল ... ব্যাখ্যা, দয়া করে? : ডি
লিও

1
আমি একটি কাজের উদাহরণ যুক্ত করেছি।
ডেনিস

6

পিএইচপি> = 7.1, 52 বাইট

for(;$t=min(~$argv[1][$i],~$argv[2][$i++]);)echo~$t;

পিএইচপি স্যান্ডবক্স অনলাইন

পিএইচপি> = 7.1, 69 বাইট

for([,$a,$b]=$argv;(~$c=$a[$i])&&~$d=$b[$i++];)$r.=max($c,$d);;echo$r;

পিএইচপি স্যান্ডবক্স অনলাইন

পিএইচপি> = 7.1, 70 বাইট

for([,$a,$b]=$argv;(~$c=$a[$i])&&~$d=$b[$i++];)$r.=$c>$d?$c:$d;echo$r;

পিএইচপি স্যান্ডবক্স অনলাইন


1
সামান্য golfed: for(;$t=min(~$argv[1][$i],~$argv[2][$i++]);)echo~$t;
ব্যবহারকারী 63956

6

এলিস , 8 বাইট

/oI\
@m+

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

ব্যাখ্যা

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

/   Reflect to SE, switch to Ordinal. The IP bounces diagonally up and down
    through the code.
m   Truncate, doesn't really do anything right now.
I   Read a line of input.
    The IP bounces off the bottom right corner and turns around.
I   Read another line of input.
m   Truncate the longer of the two input lines to the length of the shorter.
+   Superimpose: compute their elementwise maximum. 
o   Output the result.
@   Terminate the program.

6

রেটিনা , 28 বাইট

{O^`
G`.
^.+$

M!\*`^.
Rm`^.

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

ব্যাখ্যা

{O^`

{রেটিনা বলে না হওয়া পর্যন্ত কাজ স্ট্রিং পরিবর্তন করতে ব্যর্থ হয় একটি লুপ সমগ্র প্রোগ্রাম চালানো হয়। Oএটি একটি বাছাই করার মঞ্চ তৈরি করে যা ডিফল্টরূপে খালি খালি লাইনগুলি সাজায়। ^বিকল্প ফলাফলের reverses। সুতরাং কার্যকরভাবে, আমরা দুটি রেখার বিপরীত ক্রম পাই যদি সেগুলি শূন্য থাকে না, শীর্ষে বৃহত্তর শীর্ষস্থানীয় চরিত্রের সাথে রেখাটি রেখে।

G`.

খালি লাইন থাকলে তা বাতিল করুন।

^.*$

যদি কেবল একটি লাইন বাকি থাকে তবে লাইনগুলির একটি ফাঁকা ছিল, এবং প্রক্রিয়াটি থামাতে আমরা অন্য একটিটিকেও সরিয়ে ফেলি।

M!\*`^.

এখানে প্রচুর কনফিগারেশন চলছে। এটি ( M) কার্যকারী স্ট্রিং ( ) এর প্রথম অক্ষরটির সাথে মেলে ^., এটি ( !) প্রদান করে, এটি কোনও \পূর্ববর্তী লাইনফিড ( ) ছাড়াই মুদ্রণ করে এবং তারপরে ওয়ার্কিং স্ট্রিংটিকে পূর্ববর্তী মানটিতে ( ) রূপান্তর করে *। অন্য কথায়, আমরা কেবল স্ট্রিংটি পরিবর্তন না করে কেবল কার্যকারী স্ট্রিংয়ের প্রথম অক্ষর (যা সর্বাধিক শীর্ষস্থানীয় চরিত্র) মুদ্রণ করি।

Rm`^.

অবশেষে, আমরা প্রতিটি লাইন থেকে প্রথম অক্ষরটি সরিয়ে ফেলি, যাতে পরবর্তী পুনরাবৃত্তি পরবর্তী অক্ষরটি প্রক্রিয়া করে।


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

আপনি 3 বাইট সংরক্ষণ করতে পারবেন যেহেতু এটি G`.অপ্রয়োজনীয়, যদিও এটি একটি অতিরিক্ত নতুন লাইন আউটপুট দেয় যা আপনি উত্তরটির শুরুতে ব্যবহার করে ^.+¶$বা উপসর্গ দ্বারা মুছতে পারেন \
নীল

@ নীল ওহ ভাল পয়েন্ট আমি সর্বশেষতম প্রতিশ্রুতিও ব্যবহার করতে পারি (এটি এখনও টিআইও-তে নেই এবং সম্ভবত কিছুক্ষণের জন্য হবে না) যেখানে আমি লাইনফিড ডিফল্ট ছাড়াই মুদ্রণ করেছি (আমি তখন অন্যটিও ফেলে দিতে পারি \)।
মার্টিন ইন্ডার


6

জাভাস্ক্রিপ্ট (ES6), 47 45 বাইট

f=
(a,b)=>a.replace(/./g,(c,i)=>c>b[i]?c:[b[i]])
<div oninput=o.textContent=f(a.value,b.value)><input id=a><input id=b><pre id=o>

সুবিধামত c>b[i]শেষ প্রান্তের মিথ্যা অতীত ফিরে আসে b। সম্পাদনা: @ বুদ্ধিমানের জন্য 2 টি বাইট সংরক্ষণ করা হয়েছে


এখানে আমার সেলফোনে উপরের কোডটি কার্যকর করা যাবে না। পিসি ডেস্কটপে উপরের উদাহরণগুলিতে আমি বলেছি ঠিক আছে, তবে ফাংশনগুলির জন্য ইনপুট পরিবর্তন করার অনুমতি দিচ্ছে না ... পরিবর্তে টিও ব্যবহার করবেন না কেন?
রোজলুপি

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


5

গণিত, 78 বাইট

FromCharacterCode[Max/@Thread[#~Take~Min[Length/@x]&/@(x=ToCharacterCode@#)]]&

ম্যাথামেটিকায় এরই মধ্যে আরও একটি উত্তর রয়েছে । এই উত্তরটি স্ট্রিংগুলির তালিকা হিসাবে ইনপুট নেয়, সুতরাং এর পরিবর্তে /@ব্যবহার করা যেতে পারে । এবং আমরা কেবল ভেরিয়েবলগুলিকে বরাদ্দ করার পরিবর্তে অবজেক্টে দীর্ঘ ফাংশনের নাম রাখতে পারি। (প্রকৃতপক্ষে, প্রতিটি ম্যাথমেটিকা ​​অন্তর্নির্মিত প্রতীক নামটি ফাংশনে একবারে ব্যবহৃত হয়)#{##}Map


5

জাভা 8, 124 120 117 63 বাইট

a->b->{for(int i=0;;i++)System.out.print(a[i]>b[i]?a[i]:b[i]);}

-4 ধন্যবাদ বাইট @ Khaled.K
-3 ধন্যবাদ বাইট @Jakob

ইনপুটগুলি দুটি চরিত্রের অ্যারে এবং এটি একটি দিয়ে থামে ArrayIndexOutOfBoundsException

ব্যাখ্যা:

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

a->b->{                       // Method with two char-array parameters and no return-type
  for(int i=0;;i++)           //  Loop `i` from 0 up indefinitely (until an error is given)
    System.out.print(         //   Print:
      a[i]>b[i]?a[i]:b[i]);}  //    The character that has the highest unicode value

4

সি #, 81 78 বাইট

a=>b=>{var s="";try{for(int q=0;;q++)s+=a[q]>b[q]?a[q]:b[q];}catch{}return s;}

C # এর অন্তর্নিহিত রয়েছে charকরার intরূপান্তর (কারণ একটি charআসলে একটি হয় intযা সুন্দর নীচে), এবং পরিবর্তে কম স্ট্রিং খুঁজছেন মাত্র ব্যর্থতা পর্যন্ত চেষ্টা


1
আমাকে মার! তবে, এ-তে a=>b=>সংকলন করে কার্টিং সহ একটি বাইট সংরক্ষণ করুন Func<string, Func<string, string>>। আপনি 2 বাইট সংরক্ষণের জন্য লুপের চারপাশে বন্ধনীগুলি সরাতে পারেন।
TheLethalCoder

পার্শ্ব নোট: C# has implicit char to int conversionসত্য কারণ একটি নীচে charএকটি int
TheLethalCoder

@ দ্য লেথলকোডার: মোটেও নয়। sizeof(int) == 4কিন্তু sizeof(char) == 2
পুনরাবৃত্ত

4

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

otX>cwA)

বিন্যাসে ইনপুট স্ট্রিংগুলির একটি সেল অ্যারে {'abcd' 'efg'}

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

সরু হিসাবে, এটি আরও দুটি স্ট্রিংয়ের জন্য কাজ করে

ব্যাখ্যা

ইনপুট বিবেচনা করুন {'blended' 'bold'}। নীচে আরও সাম্প্রতিক উপাদানগুলির সাথে স্ট্যাকটি উল্টোদিকে দেখানো হয়েছে।

o    % Implicitly input a cell array of strongs. Convert to numeric
     % vector of code points. This right-pads with zeros if needed
     %   STACK: [98 108 101 110 100 101 100;
                 98 111 108 100   0   0   0]
tX>  % Duplicate. Maximum of each column
     %   STACK: [98 108 101 110 100 101 100;
                 98 111 108 100   0   0   0],
                [98 111 108 110 100 101 100]
c    % Convert to char
     %   STACK: [98 108 101 110 100 101 100;
                 98 111 108 100   0   0   0],
                'bolnded'
w    % Swap
     %   STACK: 'bolnded'
                [98 108 101 110 100 101 100;
                 98 111 108 100   0   0   0]
A    % All: gives true (shown as 1) for columns containing only nonzeros
     %   STACK: 'bolnded'
                [1 1 1 1 0 0 0]
)    % Use as logical index (mask). Implicitly display
     %   STACK: 'boln'

4

আর, 103 বাইট

কোড:

n=min(sapply(y<-strsplit(scan(,"",sep="\n"),""),length));cat(mapply(max,el(y)[1:n],y[[2]][1:n]),sep="")

পরীক্ষার কেস:

> n=min(sapply(y<-strsplit(scan(,"",sep="\n"),""),length));cat(mapply(max,el(y)[1:n],y[[2]][1:n]),sep="")
1: programming puzzles & code golf!?
2: not yet graduated, needs a rehaul
3: 
Read 2 items
prtgretmirgduuzzlesneedsde rolful
> x <- scan(,"",sep=NULL)
1: asd asd 
3: 
Read 2 items
> n=min(sapply(y<-strsplit(scan(,"",sep="\n"),""),length));cat(mapply(max,el(y)[1:n],y[[2]][1:n]),sep="")
1: king
2: object
3: 
Read 2 items
oing
> n=min(sapply(y<-strsplit(scan(,"",sep="\n"),""),length));cat(mapply(max,el(y)[1:n],y[[2]][1:n]),sep="")
1: lab0ur win.
2: the "super bowl"
3: 
Read 2 items
the0usuwir.

তাই না? সর্বাধিক কাজ করে? টিআইএল
জেএড



4

ভি , 28, 24 , 21 বাইট

Í./&ò
dd{JdêHPÎúúx
Íî

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

Hexdump:

00000000: cd2e 2f26 f20a 6464 7b4a 64ea 4850 cefa  ../&..dd{Jd.HP..
00000010: fa78 0acd ee                             .x...

তিনটি বাইট সংরক্ষণ করেছেন @ nmjcman101 এর জন্য ধন্যবাদ!

ব্যাখ্যা:

Í             " Globally substitute:
 .            "   Any character
  /           " With:
   &          "   That character
    ò         "   And a newline
dd            " Delete this line
  {           " Move to the first empty line
   J          " Delete this line
    dê        " Columnwise delete the second word
      HP      " Move to the first line, and paste the column we just deleted
        Î     " On every line:
         úú   "   Sort the line by ASCII value
           x  "   And delete the first character
Í             " Remove all:
 î            "   Newlines

Is dGপ্রয়োজনীয়? Íîযাইহোক নতুন লাইনের সমস্তগুলি মুছে ফেলা যায় না ?
nmjcman101

@ nmjcman101 স্ট্রিংগুলি বিভিন্ন দৈর্ঘ্যের হলে এটি প্রয়োজন।
ডিজেএমসিএমহেম

3

সিজেম , 12 বাইট

q~z{1/~e>o}%

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

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

ব্যাখ্যা

q~              e# Read input and evaluate
  z             e# Zip: list of strings of length 2, or 1 if one string is shorter
   {      }%    e# Map this block over list
    1/          e# Split the string into array of (1 or 2) chars
      ~         e# Dump the chars onto the stack
       e>       e# Maximum of two chars. Error if there is only one char
         o      e# Output immediately, in case the program will error

3

Clojure, 31 বাইট

#(map(comp last sort list)% %2)

ফাংশন রচনাটির জন্য হ্যাঁ :) একটি স্ট্রিংয়ের পরিবর্তে অক্ষরের একটি ক্রম ফেরত দেয় তবে তারা মুদ্রণ বা রেজেক্স ম্যাচিংয়ের সময় ক্লোজুরে বেশিরভাগ ক্ষেত্রে একইভাবে কাজ করে।

দুঃখজনকভাবে maxচরিত্রগুলি নিয়ে কাজ করে না।


maxকাজ করে না, তবে max-keyকরে। #(map(partial max-key int)% %2)এটি ঠিক একই বাইট গণনা, যদিও।
ম্যাডস্ট্যাপ

ওহ শান্ত, আমি এটা সম্পর্কে ভুলে গিয়েছিলাম। উদাহরণস্বরূপ তুলনায় অনেক সহজ (ffirst (sort-by second ...)
নিকোনিহার

3

জাভাস্ক্রিপ্ট (ES2015), 66 63 49 বাইট

a=>b=>[...a].map((c,i)=>c>b[i]?c:b[i]||'').join``

ব্যাখ্যা:

a=>b=>                       // Function with two string parameters
  [...a]                     // Split a into array of characters
    .map((c, i) =>           // Iterate over array
      c>b[i] ? c : b[i]||'') //   Use the character with the larger unicode value until the end of the larger string
    .join``                  // Join the array into a string

পূর্বের সংস্করণসমূহ:

//ES2015
a=>b=>[...a].map((c,i)=>c>b[i]?c:b[i]).slice(0,b.length).join``    //63
a=>b=>a.split``.map((c,i)=>c>b[i]?c:b[i]).slice(0,b.length).join`` //66
a=>b=>a.split``.map((c,i)=>c>b[i]?c:b[i]).slice(0,Math.min(a.length,b.length)).join``   //85
a=>b=>{for(i=-1,c='';++i<Math.min(a.length,b.length);)c+=a[i]>b[i]?a[i]:b[i];return c}  //86
a=>b=>{for(i=-1,c='';++i<Math.min(a.length,b.length);)c+=a[d='charCodeAt'](i)>b[d](i)?a[i]:b[i];return c}   //105
a=>b=>a.split``.map((c,i)=>c[d='charCodeAt']()>b[d](i)?c:b[i]).slice(0,Math.min(a.length,b.length)).join``  //106

//With array comprehensions
a=>b=>[for(i of a.split``.map((c,i)=>c>b[i]?c:b[i]))i].slice(0,b.length).join``                             //79
a=>b=>[for(i of a.split``.map((c,i)=>c>b[i]?c:b[i]))i].slice(0,Math.min(a.length,b.length)).join``          //98
a=>b=>[for(i of ' '.repeat(Math.min(a.length,b.length)).split``.map((_,i)=>a[i]>b[i]?a[i]:b[i]))i].join``   //105
a=>b=>[for(i of Array.apply(0,Array(Math.min(a.length,b.length))).map((_,i)=>a[i]>b[i]?a[i]:b[i]))i].join`` //107
a=>b=>[for(i of a.split``.map((c,i)=>c[d='charCodeAt']()>b[d](i)?c:b[i]))i].slice(0,Math.min(a.length,b.length)).join``        //119
a=>b=>[for(i of ' '.repeat(Math.min(a.length,b.length)).split``.map((_,i)=>a[d='charCodeAt'](i)>b[d](i)?a[i]:b[i]))i].join``   //124
a=>b=>[for(i of Array.apply(0,Array(Math.min(a.length,b.length))).map((_,i)=>a[d='charCodeAt'](i)>b[d](i)?a[i]:b[i]))i].join`` //127

পিপিসিজিতে আপনাকে স্বাগতম! প্রথম প্রথম পোস্ট!
আর

3

রেটিনা , 55 36 বাইট

^
¶
{O`¶.*
}`¶.(.*)¶(.)
$2¶$1¶
1!`.*

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


3

কাস্তে , 2 বাইট

z▲

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

"Ungolfed" / ব্যাখ্যা

সংক্ষিপ্ত তালিকে এর ব্যবহার zip fকেটে দেয় যাতে সর্বদা দুটি যুক্তি থাকে fযেমন zip f [1,2] [3,4,5] == zip f [1,2] [3,4] == [f 1 3, f 2 4]:

z   -- zip the implicit lists A,B with  - e.g. "ab" "bcd" (lists of characters)
 ▲  -- maximum                          -      [max 'a' 'b', max 'b' 'c']
    -- implicitly print the result      -      "bc"

3

কোটলিন, 50 41 37 বাইট

-9 ফাংশন রেফারেন্স সিনট্যাক্স সহ বাইটস -4 এক্সটেনশন ফাংশন সহ বাইট

fun String.x(o:String)=zip(o,::maxOf)

যদি s, এবং x স্কোপে থাকে এবং কোনও ফাংশনে না থাকে তবে এই পদ্ধতিটি কেবল 16 বাইট

s.zip(x,::maxOf)

ডেমো


এখানে একটি ট্রাই.কোটলিনল্যাং.org লিঙ্কটি দেওয়া আছে: try.kotlinlang.org/#/UserProjects/ulm4nriigeio44jq1sdqer9sg2/…
কিরিল

2

পাওয়ারশেল, 75 বাইট

-join(1..(($a,$b=$args)|sort l*)[0].length|%{(,$a[$_-1],$b[$_-1]|sort)[1]})
#            ^input array unpack
#       ^string index generation offset by 1
#                         ^sort by length property, so output length matches shorter input
#                                           ^loop over indices
#                                       max of the two characters^
# ^output join

.Ps1 ফাইল হিসাবে সংরক্ষণ করুন এবং রান করুন

PS C:\> .\Get-MultipliedString.ps1 'hello,' 'world!'
worlo,

পূর্বে, 78 বাইট:

$i=0;-join$(while(($a=$args[0][$i])-and($b=$args[1][$i++])){($a,$b)[$b-gt$a]})

2

জে, 25 বাইট

>./&.(a.&i.)@(<.&#{."1,:)

ব্যাখ্যা

অর্ধেক বাইটগুলি উভয় ইনপুটগুলি সংক্ষিপ্ত ইনপুট দৈর্ঘ্য রয়েছে তা নিশ্চিত করার সমাধান করতে চলেছে (এই অংশে উন্নতি দেখতে যদি কারও একটি থাকে তবে তা দেখতে পছন্দ করবেন):

(<.&#{."1,:)

<.&#দুটি দৈর্ঘ্যের সর্বনিম্ন এবং {."1,:এটি ডানদিকের উপরে স্ট্যাক করা বাম স্ট্রিং সমন্বিত 2-সারি টেবিলের উভয় সারি থেকে বহু অক্ষর গ্রহণ করে।

>./&.(a.&i.)

&.প্রতিটি অক্ষরকে তার ascii সূচীতে রূপান্তর করতে আন্ডার ক্রিয়াটি ব্যবহার করুন , দুটি সংখ্যা সর্বাধিক নিন এবং তারপরে অক্ষরে রূপান্তর করুন।

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


1
21 বাইট[:>./&.(3&u:)<.&#$&>;
মাইল

@ মাইলস, ট্রেন এবং সংমিশ্রনের মার্জিত সমন্বয় - পেরেনস এড়ানোর জন্য আমার আরও সেই কৌশলটি ব্যবহার করতে হবে। এছাড়াও u:আমার জন্য একটি তিল ছিল।
জোনাহ

2

জাভা 8 + Elpipse সংগ্রহ, 70 64 বাইট

a->b->a.zip(b).collect(p->(char)Math.max(p.getOne(),p.getTwo()))

aএবং bউভয়ই MutableList<Character>গ্রহন সংগ্রহ থেকে।


2

++ , 8 বাইট যুক্ত করুন

D,f,@@,^

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

0.4 থেকে 1.11 পর্যন্ত সংস্করণগুলিতে ^আর্গুমেন্টের ধরণের উপর নির্ভর করে দুটি সংখ্যা বা দুটি গুণকে "গুণিত" করে onents


এটি কোড-গল্ফের চেতনার বিপরীতে, আপনার নিজের ভাষার (যে অন্য কেউ ব্যবহার করেন না) জেনে একটি প্রশ্ন পোস্ট করা একটি বিল্ট-ইন রয়েছে যা এটিকে একচেটিয়া দেয়। ধন্যবাদ, জেলির সংক্ষিপ্ততা আবার জিতল।
ফ্লিপট্যাক

12
@ ফ্লিপট্যাক আপনি প্রশ্নের প্রথম লাইনটি পড়েছেন? এটি 0 বাইট হলেও, এটি জিততে পারে না।
কেয়ার্ড কইনিরিংহিংহ

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

1

গণিত, ১০২ বাইট

T=ToCharacterCode;L=Length;(a=T@#;b=T@#2;FromCharacterCode@Table[Max[a[[i]],b[[i]]],{i,L@a~Min~L@b}])&


ইনপুট

["মিশ্রিত", "সাহসী"]


L@a~Min~L@bএকটি বাইট সংরক্ষণ করে
গ্রেগ মার্টিন

1

এপিএল (ডায়ালগ) , 22 বাইট

দুটি (বা আরও!) স্ট্রিংকে সঠিক যুক্তি হিসাবে গ্রহণ করে।

{⎕UCS⌈⌿⎕UCS↑⍵↑¨⍨⌊/≢¨⍵}

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

{ একটি বেনামী ফাংশন যেখানে ডান আর্গুমেন্টটি দ্বারা উপস্থাপিত হয়

⎕UCSইউ নিকোড সি হ্যার্যাক্টর এস এট  থেকে প্রাপ্ত প্রতীকগুলি যা এর সাথে মিল রয়েছে

⌈⌿ প্রতিটি কলামে সর্বাধিক মান

⎕UCS এর জন্য ইউ নিকোড সি হ্যারেটার এস এট থেকে কোড পয়েন্টস

 ম্যাট্রিফাইড (স্ট্রিংয়ের তালিকা থেকে ম্যাট্রিক্স)

 আর্গুমেন্ট

↑¨⍨ প্রতিটি ক্যাপড

⌊/ সর্বনিম্ন

≢¨ দৈর্ঘ্য

 যুক্তিগুলির

}

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