বিমূর্ত রাইটারিং চ্যালেঞ্জ (ডাকাত)


9

এটি কিছুটা হলেও -একটি চ্যালেঞ্জ। এটাই ডাকাতদের সুতো; পুলিশদের থ্রেড এখানে

ডাকাতের

পুলিশগুলি বিমূর্ত রাইটিং সিস্টেমগুলি পোস্ট করবে। আপনার কাজটি হ'ল তাদের পুনর্লিখনের নিয়ম প্রয়োগ করে উত্সের স্ট্রিং থেকে পৌঁছানো যাবে না তা প্রমাণ করে তাদের জমা দেওয়ার ক্র্যাক করা। (আপনি হয় তা পুনরায় লেখার নিয়মের একটি ক্রম পোস্ট করে যা উত্সের স্ট্রিং দিয়ে শুরু হয় এবং লক্ষ্যটি দিয়ে শেষ হয়, বা গাণিতিকভাবে প্রমাণ করে যে এটি রয়েছে বা আছে না))

বিশদ এবং সংজ্ঞা জন্য পুলিশদের থ্রেড দেখুন ।


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

কোনও উদ্বেগ নেই, আমি অনুগ্রহ ফিরিয়ে দিয়েছি।
জেমস

@ ডিজেএমসিএমহেম: হু ... তাই এসই এপিআই এই প্রশ্নটিকে বৈশিষ্ট্যযুক্ত হিসাবে তালিকাভুক্ত করছে তবে কোনও অনুদানের পরিমাণ বা সমাপ্তির তারিখ ছাড়াই। : ওহ ভাল, আমার ব্যবহারকারী স্ক্রিপ্টে কিছু ইনপুট বৈধতা যুক্ত করার সময়।
ইলমারি করোনেন

উত্তর:


16

jimmy23013

এর জন্য পিছনে কাজ করা যাক। আমরা প্রথমে অঙ্কগুলি তাদের বাইনারি উপস্থাপনায় পরিণত করি। আমরা থেকে VW626206555675126212043640270477001760465526277571600601যেতে VW++__+_++__+____++_+_++_++_+++_++++_+__+_+_++__+___+_+____+___++++_+______+_+++___+__++++++________++++++____+__++_+_++_+_+_++__+_+++++++_++++__+++_______++______+। এর পরে, আমরা বিপরীত আবেদন রাখা DCW:W+এবং DW:W_যতক্ষণ না আমরা সব চিহ্ন সাফ করুন। আমাদের ফলাফল এখন VDCDCDDDCDDCDCDDDCDDDDDCDCDDCDDCDCDDCDCDDCDCDCDDCDCDCDCDDCDDDCDDCDDCDCDDDCDDDDCDDCDDDDDCDDDDCDCDCDCDDCDDDDDDDCDDCDCDCDDDDCDDDCDCDCDCDCDCDDDDDDDDDCDCDCDCDCDCDDDDDCDDDCDCDDCDDCDCDDCDDCDDCDCDDDCDDCDCDCDCDCDCDCDDCDCDCDCDDDCDCDCDDDDDDDDCDCDDDDDDDCW। আমরা এখন এই স্ট্রিং ম্যাচ করতে চাই VD+C+W; যে, আমরা Ds এর সমস্ত বাম দিকে সরিয়ে নিতে চাই C। বিপরীত দ্বারা এটি করা যেতে পারে DCC:CD। আমরা নিম্নলিখিত অ্যালগরিদমের পুনরাবৃত্তি করে এটি করি:

  1. S Dএর একটি ব্লকের ডানদিকে প্রথমটি সন্ধান করুন C
  2. Dসেই ব্লকের বাম দিকে সরান ।
  3. এর সংখ্যা দ্বিগুণ করুন C

কিছু গণিতের মাধ্যমে, আমরা নির্ধারণ করতে পারি যে আমরা 123 Dগুলি এবং 4638704741628490670592103344196019722536654143873 Cs দিয়ে শেষ করব (কোনও এসই উত্তরের ক্ষেত্রে এটি উপযুক্ত নয় বলে আপনি ঠিক বলেছেন ... আমি সন্দেহ করি পৃথিবীর সমস্ত পরমাণুর রাজ্য হিসাবে সংরক্ষণ করা হলে এটি উপযুক্ত হবে) সম্মিলিত: পি)।

যদি আমরা বিপরীতটি প্রয়োগ করে রাখি তবে আমরা এখন V:VDসমস্ত কিছু থেকে মুক্তি পেতে পারি D, তাই আমরা পেয়েছি VCCC.......CCCW। আমরা Vপিছনে রূপান্তর YZ। এখন আমাদের আছে YZCCC.......CCCW

আমরা সমস্ত Cগুলি এর থেকে মুক্তি এবং ফর্মটিতে রাখতে সক্ষম হতে চাই YAAA...AAABBB...BBBZW। ভাগ্যক্রমে, নিম্নলিখিত পদ্ধতি দ্বারা এটি করা যেতে পারে। প্রথমত, আমরা YB:Yপেতে 587912508217580921743211 বার বিপরীত-প্রয়োগ করি YBBB.......BBBZCCC.......CCCW। তারপরে, আমরা নীচের পদক্ষেপগুলির ক্রম পুনরাবৃত্তি করি (যেখানে [?*]কোনও সংখ্যার অর্থ ?, শূন্যের চেয়ে অগত্যা বৃহত্তর নয়):

  1. পাওয়ার জন্য বিপরীত-প্রয়োগ CZ:ZC587912508217580921743211 বারY[A*]BBB.......BBBCCC.......CCCZCCC.......CCCW
  2. CB:BCপেতে বহুবার বিপরীত প্রয়োগ করুনY[A*]BCBCBC.......BCBCBCZCCC.......CCCW
  3. বিপরীত-প্রয়োগ AZ:Zএবং AB:BCAপেতে অনেক সময়Y[A*]ABBB.......BBBZCCC.......CCCW

প্রবর্তনের মাধ্যমে আমরা দেখতে পাচ্ছি যে আমরা BZসংমিশ্রণটি সর্বশেষে (পূর্বে ব্যতীত W) সরিয়ে নিতে পারি এবং তারপরে As এর সংখ্যা 1/587912508217580921743211 হয় C, আমাদের ছেড়ে 7890127658096618386747843 As রেখে । আমাদের এখন আছে YAAA.......AAABBB.......BBBZW। রূপান্তর ZWএকটি ফিরে U, তারপর বিপরীত আবেদন U:BUঅনেকবার শুধুমাত্র 2 রাখার Bs এবং তারপর রূপান্তর BBUএকটি থেকে T, এবং আপনি এখন YAAA.......AAAT। তারপরে, আপনি T:AAAAATপেতে বহুবার বিপরীত-প্রয়োগ করতে পারেন YAAATকারণ As এর সংখ্যা 5 এর একাধিকের চেয়ে 3 বড় ছিল।

চ্যালেঞ্জের জন্য ধন্যবাদ!


এটি কোথাও বলা হয়েছে বা এটি ডিফল্টরূপে যে বিপরীত প্রয়োগ অনুমোদিত?
ওয়েজুন চাউ

2
@ ওয়েইজুনঝৌ আমার অর্থ, যদি প্রয়োগের A:Bজন্য আবেদন করা হয় ABCতবে BBCএটি স্পষ্টত যে ইনভার্স প্রয়োগ A:Bকরা BBCযায় তা দিতে পারে ABC। এটি সুনির্দিষ্টভাবে বলা হয়নি যে এটি অনুমোদিত, তবে আমি সহজেই আমার পদক্ষেপগুলি বিপরীত করতে পারি এবং একটি "প্রচলিত" সমাধান পেতে পারি, আইএমও পিছনে যাওয়া আরও সহজ go
হাইপারনিউটারিনো

আমি বোঝাতে চাইছি, উদাহরণস্বরূপ, যদি এখানে কেবল একটি নিয়ম থাকে A:Bএবং এটি উল্লিখিত না হয় যে বিপরীত প্রয়োগের অনুমতি দেওয়া হয় তবে আমি মনে করি না আপনি থেকে যেতে BBCপারেন ABC। এই নির্দিষ্ট কেসটি আলাদা হতে পারে এবং অন্য দিকে যাওয়ার কিছু উপায় আছে। আমি পরে এটি পরীক্ষা করব।
ওয়েজুন চাউ

2
@HyperNeutrino ^^
Weijun ঝু

1
আপনি কোন প্রোগ্রামটি ফ্যাক্টর করতে ব্যবহার করেছেন এবং এটি কতক্ষণ নিয়েছে?
ব্যবহারকারী 202729

9

boboquack

প্রদত্ত স্ট্রিংয়ের জন্য, সমস্ত অক্ষর (a = 0, b = 1, c = 2) নিন এবং সেগুলি যোগ করুন এবং মডুলো 3 নিন Then তারপরে পুনরায় লেখার কোনও নিয়মই সেই মানটি পরিবর্তন করে না। উত্সের স্ট্রিংয়ের মান 1 হয় এবং লক্ষ্যটির মান 2 থাকে Therefore সুতরাং, নিয়মের কোনও সংমিশ্রণ উত্সের স্ট্রিংকে লক্ষ্য স্ট্রিংয়ে রূপান্তরিত করবে না।


9

feersum

এটি একটি সাকোবান ধাঁধা। শুরুর অবস্থানটি হ'ল:

          ___#
#___####_____#
#_#_#_##_#_!##
##______##_###
##__####_#_###
###__###__

শেষ অবস্থানটি হ'ল:

          ___#
#___####_____#
#_#_#_##_#_###
##____!__#_###
##__####_#_###
###__###__

এটি নিম্নলিখিত কী ক্রম ব্যবহার করে সমাধান করা যেতে পারে:

←← → ↓↓ ← ↑ ←←←←←← ↓↓ → ↑ ← ↑↑↑ ←← ↓ → ↑ → ↓↓ →→→→→→ ↓ → ↑↑ ↓↓ ← ↓ ← ↑ → ↑ ←←← ← ↑ ←← ↓ →→→→→ ↓ →→ ↑↑ → ↑↑ ← ↓ ←← ↓↓ → ↑ ← ↑ →→ ↑ →→ ↓ ← ↓ ←← ↓↓ → ↑ ←←←←←←← ↑ ↑ ←← ↓ →→ ↓ → ↓↓ ← ↑ ← ↑ → ↑↑ ←← ↓ → ↑ → ↓↓ ← ↓ → ↑ →→→→→→ ↓↓ ← ↑ → ↑ ←←←←←← →→→ →→→ ↑↑ ← ↓ → ↓ ← ↑↑ →→ ↑ →→ ↓ ← ↓ ← → ↑↑ ← ↓ ← ↓ ↑ →→ ↓ ← ↑ ←← ↓↓↓ →→ ↑↑ ↓↓ ←← ↑↑ → ↓ ↑↑ → ↑ →→ ↓ ← ↓ ← ↓ ←← ↑↑ →→ ↑ → ↓ ← ↓↓ ←←←←← ↑ ←← ↓ →→→→→ ←←←←← ↑↑ ←← ↓ →→ ↓↓ ← ↑ →→→→

এখানে একটি বাশ প্রোগ্রাম রয়েছে যা মূল ক্রমটি সেড কমান্ডগুলিতে রূপান্তর করে এবং সেগুলি প্রয়োগ করে। সিড কমান্ডগুলিতে কেবলমাত্র কপির উত্তরে সংজ্ঞায়িত পুনর্লিখনের নিয়মগুলি ব্যবহার করে এবং লেবেলিং এবং ব্রাঞ্চিং কমান্ডগুলি স্ট্রিং সংশোধন করে না rep এটি নিশ্চিত করে যে আপনি কেবল পুনর্লিখনের নিয়ম ব্যবহার করে লক্ষ্য স্ট্রিংটি পেতে পারেন।

s="___##___####_____##_#_#_##_#_!####______##_#####__####_#_######__###__"
input=

while
    printf '\n%80s\n' "$s"|fold -w14
    read -n 1
    [ "$REPLY" = $'\e' ]
do
    read -n 2
    case "$REPLY" in
    [A)
        s="$(sed '
s:!:wLW_:
        :a
s:L:<<<<<<<<<<<<<:
s:#w<:w#:
s:_w<:w_:
s:_<:<_:
s:#<:<#:
s:#wW:wLX!:
s:_W:W_:
s:#W:W#:
s:_wW:!:
s:_X:X_:
s:#X:X#:
s:_wX:#:
        ta' <<<"$s")";;
    [B)
        s="$(sed '
s:!:_VRv:
        :a
s:R:>>>>>>>>>>>>>:
s:>v#:#v:
s:>v_:_v:
s:>_:_>:
s:>#:#>:
s:Vv#:!URv:
s:U_:_U:
s:U#:#U:
s:Uv_:#:
s:V_:_V:
s:V#:#V:
s:Vv_:!:
        ta' <<<"$s")";;
    [C)
        s="$(sed '
s:!#_:_!#:
        te
s:!_:_!:
        :e' <<<"$s")";;
    [D)
        s="$(sed '
s:_#!:#!_:
        te
s:_!:!_:
        :e' <<<"$s")";;
    esac
    input="$input${REPLY:1}"
done

echo "$input"

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

এটি অনলাইনে ব্যবহার করে দেখুন (এস্কেপ কোড সরিয়ে দিয়ে)!

উপরে এবং ডাউনের জন্য , !:wLW_বা !:_VRvএকবারের জন্য অনুরূপভাবে প্রয়োগ করা হয়, এবং প্রাসঙ্গিক নিয়মগুলি !আবার উপস্থিত না হওয়া পর্যন্ত বারবার প্রয়োগ করা হয়। ডান জন্য, এক !#_:_!#এবং !_:_!প্রয়োগ করা হয়। এর জন্য বাম, এক _#!:#!_এবং _!:!_প্রয়োগ করা হয়।

প্রতিটি পদক্ষেপের পরে অবস্থানের জন্য লিঙ্কগুলিতে আউটপুট দেখুন See


6

xnor

বিধি 1 x:xn বিধি 2 no:oon বিধি 3 nr:r বিধি 4ooooooooooo:

আমরা [X,Y]ওয়াই Xএস এর একটি রান নির্দেশ করতে ব্যবহার করি

থেকে শুরু xn[o,A]r,

  1. আমাদের কাছে একবার বিধি 2 প্রয়োগ করা x[o,2]n[o,A-1]r
  2. আমাদের কাছে আরও একবার বিধি 2 প্রয়োগ করা x[o,4]n[o,A-2]r
  3. যতক্ষণ না প্রয়োগ করা হচ্ছে oমধ্যে গুলি nএবং rহয়ে 0, আমরা আছে x[o,2*A]nr
  4. একবার আমাদের কাছে বিধি 3 প্রয়োগ করা x[o,2*A]r
  5. একবার আমাদের কাছে নিয়ম 1 প্রয়োগ করা xn[o,2*A]r

সুতরাং, আমাদের থেকে উত্পন্ন করার জন্য একটি অ্যালগরিদম রয়েছে xn[o,A]r করতে xn[o,2*A]r

থেকে শুরু করে xnor = xn[o,1]r, 10 বার অ্যালগরিদম পুনরাবৃত্তি করা - 10 তম লুপ ব্যতীত আমরা ধাপ 4 এ থামি, থাকা x[o,1024]r

বিধি 4 প্রয়োগ করা o, এটি ছেড়ে দিয়ে 1023 = 11 * 93 টি সাফ করে xor


2

VortexYT

Fঅন্যান্য অক্ষর তৈরি / ব্যবহার না করে গুলি মুছে ফেলার কোনও উপায় নেই ; সুতরাং, I:Fলক্ষ্য অর্জনের জন্য আমাদের অবশ্যই শেষ পদক্ষেপ হিসাবে ব্যবহার করতে হবে। কোনও নিয়ম একক দেয় নাI অন্য অযাচিত অক্ষর ছাড়া না সুতরাং আপনি লক্ষ্য স্ট্রিংয়ে যেতে পারবেন না।

সমানভাবে, আপনি যদি উত্স থেকে পিছনে ম্যাপ করার চেষ্টা Fকরেন Iতবে আপনার কাছে আর কোনও বিকল্প নেই তার আগে আপনি কেবল সেখান থেকে যেতে পারেন।


ওহ, যে ব্যথা করে। যদিও এর আরও একটি সমাধান রয়েছে ...
ভেরটেক্সওয়াইটি

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

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