কোড বটস
আমি ব্যক্তিগত এবং সুরক্ষিত ভেরিয়েবলগুলি ঘৃণা করি। আমি কেবল কিছু এবং সমস্ত কিছু অ্যাক্সেস করতে চাই!
আপনি যদি আমার মতো হন তবে এই চ্যালেঞ্জটি আপনার পক্ষে!
এমন একটি বট লিখুন যা অন্য বটের সাথে একত্রে কাজ করে অন্য বটগুলি যা চান তা করতে দেয়। আপনি একজন প্রোগ্রামার এবং আপনি কীভাবে কাজ করার কথা বলে তা আপনি জানেন। আপনার কাজ হ'ল আরও অনেকগুলি বটকে যতটা সম্ভব আপনার উপায়ে রূপান্তর করা।
কোড
আপনার বট লিখতে আপনার কাছে 24 লাইন কোড থাকবে have প্রতিটি পালা, প্রতিটি বট ক্রমান্বয়ে 1 লাইন চালায়।
প্রতিটি বট 5 টি ভেরিয়েবলের A
মাধ্যমে সঞ্চয় করে E
। A
এবং B
ব্যক্তিগত ব্যবহারের জন্য, C
কার্যকর করার জন্য পরবর্তী লাইনটি D
সঞ্চয় করে, বর্তমান দিকটি সঞ্চয় করে এবং E
এলোমেলো সংখ্যা। চলকগুলি 0 থেকে শুরু হয়, ব্যতীত D
, যা এলোমেলো মান থেকে শুরু হবে। সমস্ত ভেরিয়েবলের কেবল 0-23 স্টোর রয়েছে। বৃহত্তর বা ছোট সংখ্যা 24 দ্বারা সংশোধন করা হবে।
এই পোস্টে, আমি আপনার মুখোমুখি সংলগ্ন বট হিসাবে প্রতিপক্ষকে ব্যবহার করব
প্রতিটি লাইনে নিম্নলিখিত 5 টি কমান্ডের মধ্যে একটি থাকতে হবে:
Flag
কিছুই করে না আপনি কিভাবে জিতবেন তা বাদেMove
আপনার বটটিD
তম দিকে নিয়ে যায়। যদি কোনও বট ইতিমধ্যে স্থানটি দখল করে থাকে তবে কোনও পদক্ষেপ ঘটবে নাCopy Var1 Var2
Var1 এর বিষয়বস্তুগুলিকে Var2 এ অনুলিপি করেIf Condition Line1 Line2
যদি শর্তটি সত্য হয় তবে লাইন 1 চালায়, অন্যথায় লাইন 2Block Var1
একটি ভেরিয়েবল উপর পরবর্তী লেখার অবরুদ্ধ
একটি পরিবর্তনশীল নিম্নলিখিত হিসাবে ব্যবহার করা যেতে পারে:
#Var
ভেরিয়েবলটি লাইন নম্বর হিসাবে ব্যবহার করবে। যদি A
17 Copy #8 #A
হয় তবে লাইন 8 এর সামগ্রীগুলি লাইন 17 এ অনুলিপি করবে your
*Var
আপনার প্রতিপক্ষের পরিবর্তনশীলটি ব্যবহার করবে will দুটি ভেরিয়েবল যুক্ত করতে Copy 5 *C
প্রতিপক্ষের C
ভেরিয়েবল সেট 5
Var+Var
করবে। Copy D+1 D
বটটি ডানদিকে ঘোরান
যখন D
দিক হিসাবে ব্যবহৃত হয় তখন ব্যবহৃত [North, East, South, West][D%4]
হবে
এই সংশোধনকারীদের বেঁধে রাখা যেতে পারে: Copy *#*C #9
আপনার প্রতিপক্ষের পরবর্তী লাইনটি অনুলিপি করবে 9 **D
নং লাইনে আপনার নিজের কোডে কার্যকর করা আপনার প্রতিপক্ষের প্রতিপক্ষকে বোঝায়D
পরিবর্তনশীলকে ।
একটি শর্ত নিম্নরূপ মূল্যায়ন করা হবে:
- যদি
Var
:- ভার যদি
A
হয়C
তবে এটি ভার্স ননজারো হলে সত্য হবে, অন্যথায় মিথ্যা। - ভার
D
যদি হয় তবেD
তৃতীয় দিকের বট থাকলে এটি সত্য হবে will - যদি ভার হয়
E
এটি সত্যই ফিরে আসবে যদি ই বিজোড় হয়, অন্যথায় মিথ্যা - ভার যদি একটি লাইন হয় তবে এটি একটি পতাকা রেখা হলে এটি সত্য হবে
- ভার যদি
- যদি
Var1=Var2
:- উভয় হলে সত্য হয়
A-E
এবং একই সংখ্যার সমান হয় - উভয়ই লাইন হলে লাইন টাইপ সমান হলে সত্যটি ফেরত দেয়
- উভয় হলে সত্য হয়
- যদি
Var1==Var2
:- উভয় হলে সত্য হয়
A-E
এবং একই সংখ্যার সমান হয় - উভয়ই লাইন হলে এবং একইরূপে সত্য হয় (বিভিন্ন বট থেকে পতাকা সমান হবে না)
- উভয় হলে সত্য হয়
প্রতিটি ধরণের 50 টি বট নীচের প্যাটার্নে টরয়েডিয়াল বিশ্বে স্থাপন করা হবে:
B...B...B...B...
..B...B...B...B.
B...B...B...B...
..B...B...B...B.
পাঁচ হাজার টার্নের প্রতিটি গেমের পরে, প্রতিটি বটের পতাকা গণনা করা হবে। অন্য কোনও ধরণের পতাকার চেয়ে বটটিতে আপনার পতাকা বেশি থাকলে আপনি একটি পয়েন্ট পাবেন। যদি বটের মধ্যে টাই হওয়ার ক্ষেত্রে N
কোনও পয়েন্ট দেওয়া হয় না।
10 টি গেম থাকবে এবং স্কোরগুলি শেষে জমা হবে।
পার্শ্ব নোটস
লাইনের মন্তব্যগুলির শেষে অনুমোদিত, এবং এর সাথে চিহ্নিত করা হয়েছে //
এমন কিছু করার চেষ্টা করা যা বোঝা যায় না, যেমন একটি লাইনে যুক্ত করা কিছুই করবে না
অস্তিত্বহীন বটটিতে কিছু করার চেষ্টা করা কিছুই করবে না
কোনও অনির্দিষ্ট পুনরাবৃত্তি If
শেষ হবে কোনও লাইন কার্যকর না করে
If
এর মান পরিবর্তন করে না C
একজন Block
এটা লিখতে কারো প্রচেষ্টা পর্যন্ত মেয়াদ উত্তীর্ণ হয় না
একাধিক ভেরিয়েবল এবং লাইনগুলি একবারে অবরুদ্ধ করা যেতে পারে
Block
ভেরিয়েবল একাধিক বার আইএনএন করা একাধিক বার অবরুদ্ধ হবে যতক্ষণ না দ্বিতীয় ব্লকের স্টেটমেন্টটি আপনার প্রথমটির চেয়ে আলাদা কোডের কোডে থাকে
আর্গুমেন্টের (এবং কমান্ডের পরে) মধ্যে ফাঁকা স্থানগুলি কেবলমাত্র অনুমোদিত
যদি কোনও বট 24 টি লাইনের চেয়ে কম হয় তবে পতাকাটি অন্যান্য রেখাগুলি হবে।
নমুনা প্রোগ্রাম
Copy 2 C //Skip to the If line
Flag //Where I'm storing my flag
Move //Move in the D'th direction
If D #5 #2 //If there's a bot, copy code, otherwise, move!
Copy #1 *#E //Copy my flag onto a random spot in my bot's code
Copy 2 C //Skip back to the If line
প্রোগ্রামটি এখানে আমার পাইথন নিয়ামক দ্বারা পরিচালিত হবে ।
জাভা নিয়ামকটি এখানে রয়েছে এটি দ্রুত এবং অজগরটির চেয়ে অনেক ভাল দেখাচ্ছে।
স্কোরবোর্ড:
- 6837 $ অনুলিপি
- 3355 লকহিড
- 1695 মাইন্ডকন্ট্রোল
- 967 বাইজেন্টাইন
- 959 অ্যাটাকআরএলসে
- 743 ক্যাডমিলিয়ন
- 367 ইনফ্লুয়েঞ্জা
- 251 TheCommonCold
- 226 মাগাস
- 137 হাইডব্লকঅ্যাটাক
- 129 রোবট
- 123 ফাস্টমোভক্লোনডজ
- 112 ফাস্টফোর্ডক্লোন
- 96 QuickFreeze
- 71 মেরামতএন্ডপ্রোটেক্ট
- 96 সুপারফ্রিজে
- 93 রিভিংভাইরাস
- 80 ফরোয়ার্ডক্লোন
- 77 হিমশীতল
- 68 পলিম্পস্টে
- 62 ব্লকফ্রিজেট্যাক
- 51 রাশআটাকডজ
- 46 ব্লকার
- 40 ট্যুরেটমেকার
- 37 কপির্যাট
- 37 কামিকাজে
- 35 ফ্ল্যাগইনজেক্টর
- 33 র্যান্ডমকপিয়ার
- 31 কুখ্যাত
- 29 হ্যাপিএসএ্যাক্লাম
- 25 ন্যানোভাইরাস
- 21 নুলিফায়ার
- 19 Nanoviris
- 17 বোরিংকপিবোট
- 16 মুভবোট
- 14 ফ্ল্যাগবোট
- 13 নিউট্রালাইজার
- 12 ক্যান্সার
- 9 ডিএনএবোট
- 9 পরজীবী
- 8 মেটাআইন্সিডিয়াস
- 8 রিব্র্যান্ডিং
- 8 অ্যাডাপটিভোট
- 8 পুনরুত্পাদনবোট
- 8 কুংফুবোট
- 5 কুইকফ্রিজারবট
- 4 আক্রমণকারী