เครื่องคิดเลขต้นทุน Pokemon GO Evolution


11

เบื่อที่ต้องสงสัยว่าคุณจะต้องจับโปเกมอนเพิ่มขึ้นอีกเท่าไรเพื่อรับการวิวัฒนาการระดับสูงเหล่านั้น? ไม่ต้องสงสัยอีกต่อไป! ตอนนี้คุณจะเขียนโปรแกรมหรือฟังก์ชั่นที่สมบูรณ์เพื่อคำนวณให้คุณ!

ความท้าทาย:

ในฐานะที่เป็นอินพุทโปรแกรมของคุณจะได้รับรายการค่าใช้จ่ายในขนมเพื่อพัฒนาโปเกมอนไปยังระดับถัดไป (รายการนี้อาจคั่นด้วยตัวคั่นใด ๆ ที่คุณเลือกหรือเป็นอาร์กิวเมนต์ของฟังก์ชัน) โปรแกรมของคุณจะส่งคืนหรือพิมพ์จำนวนโปเกมอนที่จะต้องถูกจับรวมถึงที่จะถูกพัฒนาเพื่อวิวัฒนาการผ่านทุกระดับที่กำหนด

คุณคำนวณได้อย่างไร เช่นเดียวกับ:
1. เพิ่มต้นทุนขนมทั้งหมด: 12 + 50 = 62
2. ลบ 3 ลูกอมจากผลรวมนี่มาจากโปเกมอนตัวเดียวที่คุณเก็บไว้สำหรับการพัฒนา: 62 - 3 = 59
3. หารตัวเลขนี้ด้วย 4 (3 สำหรับการจับ 1 ต่อให้กับ ศาสตราจารย์) รับceil()ผลเสมอ: ceil(59/4) = 15
4. ในที่สุดเพิ่ม 1 เข้าไปในผลรวมนี้เพื่อรับจำนวนโปเกมอนที่คุณต้องจับ 16!

ตัวอย่างInput -> Output:

[4] -> 2
[50] -> 13
[12, 50] -> 16
[25, 100] -> 32
[19, 35, 5, 200] -> 65

ชนะ:

แอพได้ใช้พื้นที่บนโทรศัพท์ของคุณเป็นส่วนใหญ่ดังนั้นโปรแกรมของคุณต้องสั้นที่สุด โปรแกรมหรือฟังก์ชั่นที่สมบูรณ์ที่มีจำนวนไบต์น้อยที่สุดจะได้รับการยอมรับภายในสองสัปดาห์! (มีความสัมพันธ์ใด ๆ ที่ถูกตัดสินโดยรายการที่ส่งเร็วที่สุด!)


3
เอาต์พุตคำนวณอย่างไร?
Leun Nun

8
ในอนาคตโปรดใช้แซนด์บ็อกซ์เพื่อแก้ปัญหาความท้าทายของคุณและรับข้อเสนอแนะก่อนโพสต์
El'endia Starman

7
หากคุณต้องการเหตุผลสั้น ๆ ที่ไร้เหตุผลเล็กน้อยสำหรับความยาวรหัสสั้น ๆ คุณสามารถไปที่ "เพราะแอพนี้ใช้แบตเตอรี่ของคุณเกือบหมดคุณต้องการให้รหัสของคุณสั้นที่สุดเท่าที่จะเป็นไปได้เพื่อให้คุณพิมพ์ลงไปก่อนแบตเตอรี่จะหมด"
Mego

2
สูตรfloor(Sum(L)/4)+1ไม่ควรใช่หรือไม่ สูตรปัจจุบันใช้ไม่ได้กับผลรวมหารด้วย 4 ตัวอย่างเช่น[400]จะคืนค่า 100 เมื่อจริง ๆ แล้วต้องมี 101 สำหรับสูตรพิเศษที่จะต้องมีการพัฒนา
Emigna

6
ฉันหวังว่าจะมีคนโพสต์คำตอบในGo
Kodos Johnson

คำตอบ:



9

เยลลี่, 5 4 ไบต์

S:4‘

ลองออนไลน์!

Sเอ่อจำนวนเต็มหาร:โดยและเพิ่มขึ้น4


8
; -; ฉันสาย 4 วินาที
acrolith

ไม่ทำงานเมื่อผลรวมหารด้วย 4
นม

[4]ช่วยให้คำตอบที่ถูกต้องสำหรับ
orlp

การแก้ไข เห็นได้ชัดว่าข้อมูลจำเพาะเปลี่ยนไปเมื่อฉันหลับ
PurkkaKoodari

5

Brain-Flak 112 ไบต์

([]<([()])>){{}({}{})([][()])}{}{({}[()])<>(({}[()()()]<({}())>)){{}(<({}()()()()<({}[()])>)>)}{}<>}{}<>{}({}())

ลองออนไลน์!

คำอธิบาย

ผลรวมของสแต็กลบหนึ่งหารด้วยสี่และเพิ่มหนึ่ง


ฉันจะรันสิ่งนี้กับลองออนไลน์ได้อย่างไร มันจะออก 1 สำหรับฉันสำหรับรูปแบบการป้อนข้อมูลใด ๆ ที่ฉันได้ลอง
orlp

1
[4]ช่วยให้คำตอบที่ถูกต้องสำหรับ
orlp

@orlp แก้ไข ฉันใส่รหัสผิดในลองออนไลน์
Ad Hoc Garf Hunter


3

ที่จริงแล้ว 4 ไบต์

Σ¼≈u

ลองออนไลน์!

คำอธิบาย:

Σ¼≈u
Σ     sum
 ¼    divide by 4
  ≈   floor
   u  add 1

1
ไม่ใช่ตัวอักษรยูนิโค้ด 2 ไบต์ใช่ไหม
23127

1
@ user23127 หากมีการเข้ารหัสใน UTF-8 ใช่ จริงๆแล้ว (และรุ่นก่อนอย่างจริงจัง) ใช้ CP437
Mego







1

CJam, 7 ไบต์

{:+4/)}

ลองที่นี่!

กำหนดบล็อกที่ไม่มีชื่อที่คาดว่าอินพุตในสแต็กและปล่อยผลลัพธ์ไว้ที่นั่น
:+สรุปรายการ4/หารผลลัพธ์ด้วย 4 และ)เพิ่มทีละ





1

SILOS 100 99 103 ตัวอักษร + 22 สำหรับตัวอย่างอินพุต

รหัสพร้อมชุดทดสอบ

set 512 52
set 513 10
GOSUB e
GOTO f
funce
a = 0
i = 511
lblE
i + 1
b = get i
a + b
if b E
a / 4
a + 1
return
lblf
printInt a

อินพุตเป็นชุดของคำสั่งชุดเพื่อแก้ไขจุดของฮีปเริ่มต้นที่สปอต 512
ลองออนไลน์!


เพียงเพราะโปเกมอนโกไม่มีวิวัฒนาการมากกว่า 8 ระดับ (จริง ๆ แล้วมันมีค่าสูงสุดที่ 3) ไม่ได้หมายความว่าคุณไม่จำเป็นต้องจัดการกับกรณีทดสอบขนาดใหญ่
Mego

@ เช่นเดียวกับสเป็คที่ชัดเจนอ้างอิงโปเกมอนไปและทำให้เราสามารถสันนิษฐานได้ว่าอินพุตทั้งหมดจะเป็นอินพุตที่ถูกต้อง ฉันจะโพสต์รุ่นที่ดีขึ้นกว่าเดิมซึ่งจัดการกับอินพุตแบบแยกบรรทัด newline ที่ยกเลิกด้วย Sentinel เป็นศูนย์ แต่ TIO กำลัง borked อยู่ในขณะนี้
Rohan Jhunjhunwala

@Mego ให้ฉันอธิบายด้วย OP หากสิ่งนี้ไม่ถูกต้องฉันสามารถแก้ไขให้ใช้ได้กับกรณีทดสอบที่ใหญ่กว่าเดิม
Rohan Jhunjhunwala

นี่เป็นช่องโหว่มาตรฐาน - คุณกำลังสมมติว่ากฎไม่ได้อยู่ในการท้าทาย
Mego

@ แก้ไขด้วยค่าใช้จ่ายสามไบต์ตอนนี้ควรทำงานได้ถึง 1,000 รายการ
Rohan Jhunjhunwala

0

Python 2, 40 ไบต์

import math
lambda s:math.ceil(sum(s)/4)

สิ่งนี้ไม่ทำงานเพราะsum(s)เป็นจำนวนเต็มและ/ใน Python 2 จะเป็นการหารจำนวนเต็มเมื่ออาร์กิวเมนต์ทั้งสองเป็นจำนวนเต็ม
Leun Nun

@LeakyNun คุณหมายถึงอะไร? มันใช้งานได้สำหรับฉัน
acrolith

[4]ช่วยให้คำตอบที่ถูกต้องสำหรับ
orlp
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.