গল্ফ অনুশীলন: পাইথ [বন্ধ]


10

পাইথের গল্ফ করার সময় যে কৌশলগুলি এবং অপ্টিমাইজেশন ব্যবহার করা যেতে পারে সেগুলি সম্পর্কে এটি একটি চ্যালেঞ্জ। পাইথ গল্ফাররা এতে জড়িত অনেক কৌশল বুঝতে পারে। তবে অপরিচিত পদ্ধতি এবং নির্মাণগুলি এতে জড়িত থাকতে পারে, তাই আটকে গেলে পাইথ টিপসের পাশাপাশি পাইথ চরিত্রের রেফারেন্সটি একবার দেখুন । সমাধানগুলি এখানে পরীক্ষা করা যেতে পারে ।

লক্ষ্য: এখানে 8 টি সমস্যা রয়েছে, প্রতিটি আপনার অপটিমাইজ করার জন্য পাইথ স্নিপেট রয়েছে। আপনার লক্ষ্য হ'ল সমমানের চেয়ে ছোট কিছু তৈরি করা। রেফারেন্স সমাধান মোট 80 বাইট। আপনার লক্ষ্যটি যতটা সম্ভব পরাস্ত করা।

বিজয়ীর জমা দেওয়া হবে যা সর্বনিম্ন মোট সংখ্যা বাইট সহ সমস্ত 8 টি সমস্যা সমাধান করে। টাইব্রেকার আগের পোস্ট।

উত্তর: আপনার মোট স্কোর বাদে দয়া করে আপনার পুরো উত্তরটি ছড়িয়ে দিন। এটি উদ্দেশ্যযুক্ত যে আপনি নিজের জমা দেওয়ার আগে অন্য ব্যক্তির উত্তরগুলির দিকে তাকাবেন না।

প্রতিটি জমা দেওয়ার প্রতিটি সমস্যার উত্তর দেওয়া উচিত এবং সংশ্লিষ্ট বাইট গণনা দেওয়া উচিত, তবে আপনি যদি এটির উন্নতি করতে না পারেন তবে রেফারেন্স বাস্তবায়নটি নির্দ্বিধায় ব্যবহার করতে পারেন।

বিশদ: যদি প্রশ্নটি একটি নির্দিষ্ট মান বা আউটপুট জন্য কল করে, qসাম্যতা কাঙ্ক্ষিত, তাই 1এবং !0সমতুল্য। যদি প্রশ্নটি শর্তটি সত্য কিনা তা পরীক্ষার জন্য আহ্বান জানায়, শর্তটি মিথ্যা হলে আউটপুট অবশ্যই সত্যবাদী এবং মিথ্যা হয় তবে এটির বাইরে অযৌক্তিক। আপনি সত্যের জন্য মিথ্যা এবং মিথ্যা সত্যের পক্ষে অদলবদল করতে পারবেন না। যদি প্রশ্নটি কিছু মুদ্রণের জন্য আহ্বান করে, তবে একটি অনুবর্তনযোগ্য নিউলাইন ছাড়া আর কিছুই মুদ্রিত হতে পারে না।

এই প্রশ্নের পোস্টিং হিসাবে সাম্প্রতিকতম পাইথ কমিটের জন্য সমস্ত উত্তর অবশ্যই বৈধ হতে হবে ।

সমস্যা 1: কিউতে একটি সেট দেওয়া, যে কোনও ক্রমে Q এর উপাদানগুলি অন্তর্ভুক্ত একটি তালিকা আউটপুট করুন।

; 3 bytes
f1Q

সমস্যা 2: তালিকাটি আউটপুট করুন [1, 1, 0, 0, 1, 1, 0]

; 9 bytes
[J1JZZJJZ

সমস্যা 3: কিউতে ধনাত্মক পূর্ণসংখ্যা দেওয়া, কিউ এর সমস্ত অঙ্কগুলি ইতিবাচক (শূন্য নয়) পরীক্ষা করে দেখুন test

; 7 bytes
!f!TjQT

সমস্যা 4: z তে একটি স্ট্রিং দেওয়া হয়েছে, z এর কোনও উদ্ধৃতি চিহ্ন রয়েছে কিনা তা পরীক্ষা করুন - "বা '

; 9 bytes
|}\'z}\"z

সমস্যা 5: মানচিত্র কিউ = 1 থেকে 'উইন', কিউ = 0 থেকে 'টাই' এবং প্রশ্ন = -1 থেকে 'হারানো'।

; 20 bytes
@["Tie""Win""Lose")Q

সমস্যা 6: মুদ্রণ 0123456789

; 6 bytes
sm`dUT

সমস্যা 7: z তে একটি স্ট্রিং দেওয়া হয়েছে, বিপরীতের সংখ্যা গণনা করুন।

(সূচকগুলি iএবং jযদি একটি বিপরীকরণ গঠন করে i < jতবে z[i] > z[j])।

; 17 bytes
ssmm>@zd@zkrdlzUz

সমস্যা 8: z এ একটি তালিকা দেওয়া হয়েছে, বারবার সংলগ্ন উপাদানগুলির সংখ্যা গণনা করুন।

; 9 bytes
lfqFT.:z2

@ user1737909 এই উত্তরটি সঠিক। কোনও ফাংশনে f1Qফিল্টারগুলি Qযা সর্বদা সত্য, তাই এটি সর্বদা সেটটির প্রতিটি উপাদানকে আউটপুট করে। fএকটি তালিকা তৈরি করে, যা এই প্রশ্নের উদ্দেশ্য পূরণ করে।
isaacg

আমি এই প্রশ্নটিকে অফ-টপিক হিসাবে বন্ধ করছি কারণ অংশগুলির মধ্যে কোনও ইন্টারঅ্যাকশন ছাড়াই বহু-অংশীকরণের চ্যালেঞ্জগুলি অনুমোদিত নয়। meta.codegolf.stackexchange.com/a/8464/45941
মার্টিন এন্ডার

উত্তর:


9

52 বাইট

সমস্যা 1: 2 বাইট

    SQ

সমস্যা 2: 5 বাইট
    jC\f2

সমস্যা 3: 4 বাইট
    -0`Q
সমস্যা 4: 6 বাইট
    @z+N\'
সমস্যা 5: 17 বাইট
    %3>"LTWoiisene"hQ
অথবা
    @c3"LoseTieWin"hQ
সমস্যা 6: 3 বাইট
    pMT
সমস্যা 7: 9 বাইট
    s>R_d.cz2
সমস্যা 8: 6 বাইট
    sqVztz
আমার সাথে xnor এর সমাধান 4 এর সংমিশ্রণটি (উভয় 6 বাইট) একটি দুর্দান্ত 4 বাইট সমাধান দেয়। সুতরাং 48 বাইট সম্ভব।


আপনি xnor এর সাথে আপনার সমাধানটি একত্রিত করতে পারবেন না, কারণ xnor অবৈধ (তাঁর উত্তর সম্পর্কে আমার মন্তব্য দেখুন)।
orlp

@orlp * অকার্যকর স্টাফ ছাড়া সমস্ত কিছুর সংমিশ্রণ ;-) সমাধানটি আমার পোস্টে যুক্ত করেছে।
জাকুব

আহ, আমি এখন দেখছি :) অনুমান আমি অনুকূল থেকে 6 বাইট (এবং গণনা) খারাপ ছিল।
orlp

aaah! ধন্যবাদ! বুঝতে পারিনি :)। আমি তা সরিয়ে দেব।
ভেন

7

54 বাইট

টাস্ক 1, 2 বাইট : SQ
টাস্ক 2, 6 বাইট : j102 2
টাস্ক 3, 5 বাইট : *FjQT
টাস্ক 4, 6 বাইট : @z"'\"
টাস্ক 5, 17 বাইট : @c3"LoseTieWin"hQ
টাস্ক 6, 4 বাইট : jkUT
টাস্ক 7, 7 বাইট : s>M.cz2
টাস্ক 8, 7 বাইট :sqM.:z2


সুন্দরভাবে গল্ফ করেছে :-)
বেদাদ সাকিব

আপনি কি 4 টি কাজের জন্য বৈধ হিসাবে মিথ্যা বলার কারণে এটি একটি ফাঁকা লাইন প্রিন্ট করে?
মাল্টেসেন

@ মালটিসেন হ্যাঁ, কারণ এর সত্যবাদী মানটি ""মিথ্যা কারণ not ""সত্য is
orlp

3

58 বাইট

টাস্ক 1, 2 বাইট : SQ
টাস্ক 2, 5 বাইট : jC\f2
টাস্ক 3, 6 বাইট : !}জেড Q
টাস্ক 4, 8 বাইট : |}\'z}Nz
টাস্ক 5, 18 বাইট : @c"Tie\nWin\nLose"bQ
টাস্ক 6, 4 বাইট : jkUT
টাস্ক 7, 9 বাইট : lf>FT.cz2
টাস্ক 8, 6 বাইট :sqVtzz


আমি এ সম্পর্কে জানতাম না V(যদিও আমি এখনও এটি পুরোপুরি বুঝতে পারি না, যেহেতু আপনি অসম দৈর্ঘ্যের অপারেশনগুলিতে ভেক্টর অপারেশন করছেন), তাই আমি তার জন্য ক্ষমা করছি, তবে আমার সত্যিই C\f= /
orlp

@orlp Vস্বয়ংক্রিয়ভাবে অসম ইনপুটগুলি
কাটাচ্ছে

3

এই পোস্টটি সমস্ত উত্তর জুড়ে সেরা সমাধান জমা করার জন্য। দয়া করে সমাধানটিতে সম্পাদনা করুন এবং যদি কোনও উন্নতি হয় তবে প্রথমে সেই সমাধানটি খুঁজে পাওয়া উত্তরদাতা।

48 বাইট

1. SQ- 2 বাইট, প্রথম @ অর্ল্প
2 jC\f2- 5 বাইট, প্রথম @ মাল্টেসেন
3 পোস্ট করেছেন -0`Q- 4 বাইট, প্রথম @ জাক्यूब
4 পোস্ট করেছেন ।@z`N - 4 বাইট, @ এক্সনর এবং @ জাক्यूबের মিশ্রণ, তবে এতে নেই এখনও কোন উত্তর।
(আমি যখন প্রশ্ন লেখার সময় হয় এটিকে দেখতে পাইনি নয়)
5. @c3"LoseTieWin"hQ- 17 বাইট, প্রথম @orlp পোস্ট করেছে
6. pMT- 3 বাইট, প্রথম @Jakube পোস্ট করেছে
7. s>M.cz2- 7 বাইট, প্রথম @orlp পোস্ট করেছে
8. sqVtzz- 6 বাইট, প্রথম @ মাল্টেসেন পোস্ট করেছেন


আমরা কি প্রশ্নের আগে থেকেই পাইথ সংস্করণে সীমাবদ্ধ করছি?
অপ্টিমাইজার 12

1
"এই প্রশ্নের পোস্টিং হিসাবে সাম্প্রতিকতম পাইথ কমিটের জন্য সমস্ত উত্তর অবশ্যই বৈধ হতে হবে।" আপনি কী ভাবছেন তা শুনতে আগ্রহী হব। @ অপ্টিমাইজার
21:14 '

পাইথ কি কখনও বিকশিত হয়, তাই না? (অন্যান্য গল্ফিং ভাষার তুলনায় অনেক দ্রুত গতিতে)। সুতরাং এটি খুব সম্ভবত যে এই সংখ্যাটি (48) সহজেই অদূর ভবিষ্যতে সাব 40 এ চলে যাবে। এবং যেহেতু এটি অনুশীলন চ্যালেঞ্জ, তাই আপনি নতুন চ্যালেঞ্জের জন্য সর্বশেষতম পাইথ সংস্করণটি ব্যবহার করে আদর্শভাবে অনুশীলন করতে চান।
অপ্টিমাইজার

2

57 বাইট

1. (2) SQবাছাই করুন।
২. (৫) এএসসিআইআই ভ্যালায় jC\f2 রূপান্তর করুন fতারপরে বেস ২.
৩ (৫) সংখ্যার স্ট্রিংটিতে /`Q`0গণনা করুন '0'
4. (5) @z`\'স্ট্রিংয়ের সাথে সংযোগ স্থাপন করে "'"
5. (18) @c"Tie Win Lose"dQবিভক্ত হয়ে তালিকা তৈরি করে। আমি কাজ করতে কাটেনি।
6. (4) jkUTযোগদান range(10)। দৃশ্যত একটি স্ট্রিংয়ে স্বয়ংক্রিয়ভাবে রূপান্তরিত হয়।
(. (9)sm>d_d.:z সাবস্ট্রিংগুলি গণনা করে যা তাদের বিপরীত থেকে বেশি।
৮. (৯) l@C,zz.:zতালিকার সাবলিস্টের ছেদ করার দৈর্ঘ্য এবং তালিকার উপাদানগুলির জোড়া। রেফারেন্স সমাধান হিসাবে একই দৈর্ঘ্য।


আপনার # 4 এর সমাধানটি অবৈধ। উদাহরণস্বরূপ স্ট্রিং te\\stএকটি মিথ্যা ধনাত্মক।
orlp

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