life is what you choose it to be ...
ترجمه مسئله های روز دوم AoC 2021
لینک مسئله: غواصی کن ( Dive )
سلام! اگر غلط املایی یا علمی توی متن وجود داشت حتما بگید تا اصلاحش کنم، پیشاپیش با تشکر از توجهتون :)
Now, you need to figure out how to pilot this thing. It seems like the submarine can take a series of commands likeforward
,down
, orup
:
حالا میخوایم بفهمیم چطور باید این (زیردریایی) رو هدایت کنیم. خب به نظر میرسه که زیردریایی توانایی انجام یک سری از دستورات رو داره مثل جرکت به جلو ( forward )، پایین ( down ) و بالا ( up ).
forward X
: increases the horizontal position byX
units.down X
: increases the depth byX
units.up X
: decreases the depth byX
units.
- دستور forward X: مکان افقی را به اندازه X افزایش میده
- دستور down X: عمق رو به اندازه X افزایش میده
- دستور up X: عمق رو به اندازه X کاهش میده
Note that since you're on a submarine, down and up affect your depth, and so they have the opposite result of what you might expect.
توجه کنید از اونجایی که داخل یک زیردریایی هستید پس "بالا" و " پایین"، عمق شما رو به صورت عکس اون چیزی که انتظاز دارید تغییر میده
The submarine seems to already have a planned course (your puzzle input). You should probably figure out where it's going. For example:
خب ! به نظر میرسه زیر دریایی، یک برنامه مشخص داره (پازلی که شما باید حلش کنید). شما باید بفهمید که (زیردریایی) داره کجا میره. مثلا :
forward 5
down 5
forward 8
up 3
down 8
forward 2
Your horizontal position and depth both start at 0. The steps above would then modify them as follows:forward 5
adds5
to your horizontal position, a total of5
.down 5
adds5
to your depth, resulting in a value of5
.forward 8
adds8
to your horizontal position, a total of13
.up 3
decreases your depth by3
, resulting in a value of2
.down 8
adds8
to your depth, resulting in a value of10
.forward 2
adds2
to your horizontal position, a total of15
.
مکان افقی و عمودی شما از صفر شروع میشه (یعنی در موقعیت 0و0 قرار دارید) خب اعدادی که بالا هستند، موقعیت شما رو به این صورت تغییر میدن:
- forward 5 : به موقعیت افقی شما 5 واحد اضافه میکنه که مجموع میشه 5 تا
- down 5: به عمق شما 5 واحد اضافه میکنه که باعث میشه عمق بشه 5
- forward 8 :به موقعیت افقی شما 8 واحد اضافه میکنه که مجموعا میشه 13 تا ( سری پیش 5 تا اضافه شده بود)
- up 3: عمق شما رو 3 واحد کم میکنه که عمق میشه 2 (5 تا پایین رفته بودیم)
- down 8: افزایش عمق داریم که میشه 10
- forward 2 :مکان افقی رو 2 واحد اضافه میکنه 15
After following these instructions, you would have a horizontal position of 15 and a depth of 10. (Multiplying these together produces 150.)
بعد از ایننکه این مراحل رو دنبال کردید، مکان 15 و عمق میشه 10 (ضرب این دو عدد در هم میشه 150 تا)
Calculate the horizontal position and depth you would have after following the planned course. What do you get if you multiply your final horizontal position by your final depth?
طول(مکان افقی) و عمق رور بعد از این مراحل حساب کنید. وقتی که به مکان آخر رسیدید، مکان افقی و عمق نهایی رو در هم ضرب کنید. اگر اینکارو بکنی خروجی ات چی میشه؟
خروجی رو توی قسمت جواب بنویسید و بعد از این که تایید شد مسئله دوم واستون باز میشه
مسئله 2:
Based on your calculations, the planned course doesn't seem to make any sense. You find the submarine manual and discover that the process is actually slightly more complicated.
بر اساس محاسبه هایی که انجام دادی، به نظر میرسه این دستورات معنی دیگه میده. دنبال راهنمای زیردریایی گشتی و فهمیدی که نحوه پردازش دستور ها یکم فرق میکنه.
In addition to horizontal position and depth, you'll also need to track a third value, aim, which also starts at 0. The commands also mean something entirely different than you first thought:
علاوه بر عمق و مکان افقی زیردریایی، نیاز به ی مقدار دیگه هم داری ( به نام هدف - aim ) که اونم از 0 شروع میشه.این دستورها حالا کاملا با اون چیزی که فکر میکردی معنیش متفاوت میشه.
down X
increases your aim byX
units.up X
decreases your aim byX
units.forward X
does two things :
- It increases your horizontal position byX
units.
- It increases your depth by your aim multiplied byX
.
- down X: مقدار هدف رو به اندازه ایکس زیاد میکنه
- up X: مقدار هدف رو به اندازه ایکس کم میکنه
- forward X: دو تا کار میکنه :
- مکان افقی رو به به اندازه x زیاد میکنه
- عمق رو به اندازه هدف ضرب در x زیاد میکنه
Again note that since you're on a submarine, down and up do the opposite of what you might expect: "down" means aiming in the positive direction.
مثل دفعه قبل، از اون جایی که تو توی زیردریایی هستی، دستور "بالا" و "پایین" بر خلاف چیزی هستن که انتظار داری. پایین یعنی این که هدف رو به جهت مثبت هدایت کنی.
Now, the above example does something different:
*forward 5
adds5
to your horizontal position, a total of5
. Because your aim is0
, your depth does not change.
*down 5
adds5
to your aim, resulting in a value of5
.
*forward 8
adds8
to your horizontal position, a total of13
. Because your aim is5
, your depth increases by8*5=40
.
*up 3
decreases your aim by3
, resulting in a value of2
.
*down 8
adds8
to your aim, resulting in a value of10
.
*forward 2
adds2
to your horizontal position, a total of15
. Because your aim is10
, your depth increases by2*10=20
to a total of60
.
با توجه به مثالی که زدیم حالا این دستور ها معنی دیگه ای میده:
- دستور forward 5: مقدار 5 تا به "مکان افقی" اضافه میکنه، (مقدار فعلیش پس الان 5 هست ). بخاطر این که "هدف" ات 0 هست، "عمق" ات تغییری نمیکنه.
- دستور down 5: به "عمق" ات 5 تا اضافه میکنه ( مقدار اش پس میشه 5 )
- دستور forward 8: مقدار 8 تا به "مکان افقی ات" اضافه میکنه، ( مقدارش میشه 13 بخاطر اینکه قبلا 5 بود) و "عمق" ات هم 8*5 (که میشه 40) تا زیاد میشه
- دستور up 3: از "هدف" ات 3 تا کم میکنه. ( مقدار "هدف" میشه 2 چون قبلا 5 بود)
- دستور down 8: به "هدف" ات 8 تا اضافه میکنه. ( الان مقدار "هدف" ات میشه 10 )
- دستور forward 2: به "مکان افقی" ات 2 تا اضافه میکنه ( که میشه 15 ). مقدار هدفت تا این مرحله 10 بود، پس "عمق" ات به اندازه 2*10 تا زیاد میشه. ( که عمق ات میشه 60 تا )
After following these new instructions, you would have a horizontal position of 15 and a depth of 60. (Multiplying these produces 900.)
بعد از اینکه این عملیات ها تموم شد، "مکان افقی" ات میشه 15 و "عمق" ات میشه 60 که اگر ضربشون کنی جواب میشه 900.
Using this new interpretation of the commands, calculate the horizontal position and depth you would have after following the planned course. What do you get if you multiply your final horizontal position by your final depth?
با ورودی خودت هم اینکارو بکن. جواب نهایی چی میشه؟
منابع استفاده شده:
- سایت veryIcon برای آیکن های تصویر پیشنمایش پست
در انتها تشکر از دوستم آقای محمدحسین براتی که توی ترجمه این قسمت کمکم کرد. ❤
مطلبی دیگر از این انتشارات
واحد پردازش گرافیکی - GPU
مطلبی دیگر از این انتشارات
مفاهیم classification vs clustering (خوشه بندی و طبقه بندی) و تفاوت آنها
مطلبی دیگر از این انتشارات
انواع تست API