Golden Sun Hacking Community
August 21, 2017, 05:33:18 PM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News:
 
  Home   Forum   DC Wiki Help Search Calendar Downloads Login Register  
Pages: [1]   Go Down
  Print  
Author Topic: Advent of Code  (Read 323 times)
0 Members and 1 Guest are viewing this topic.
Fox
Fox McCloud, the Hacking Doctor
Mercury Clan

Prodigy
*

Coins: 28
Offline Offline

I am: certainly not a Gallant!
Clan Position: Head Gallant
Posts: 2340

« on: December 03, 2016, 03:36:40 PM »

So thanks to Luna_blade, we know this started recently... anyone else interested.... ? http://adventofcode.com

Spoiler for My answer (in Python code) to the first part of the Day 1 problem (So don't look until you solve. But the main point is to show that it's short.):
myInput = "R4, R3, L3, L2, L1, R1, L1, R2, R3, L5, L5, R4, L4, R2, R4, L3, R3, L3, R3, R4, R2, L1, R2, L3, L2, L1, R3, R5, L1, L4, R2, L4, R3, R1, R2, L5, R2, L189, R5, L5, R52, R3, L1, R4, R5, R1, R4, L1, L3, R2, L2, L3, R4, R3, L2, L5, R4, R5, L2, R2, L1, L3, R3, L4, R4, R5, L1, L1, R3, L5, L2, R76, R2, R2, L1, L3, R189, L3, L4, L1, L3, R5, R4, L1, R1, L1, L1, R2, L4, R2, L5, L5, L5, R2, L4, L5, R4, R4, R5, L5, R3, L1, L3, L1, L1, L3, L4, R5, L3, R5, R3, R3, L5, L5, R3, R4, L3, R3, R1, R3, R2, R2, L1, R1, L3, L3, L3, L1, R2, L1, R4, R4, L1, L1, R3, R3, R4, R1, L5, L2, R2, R3, R2, L3, R4, L5, R1, R4, R5, R4, L4, R1, L3, R1, R3, L2, L3, R1, L2, R3, L3, L1, L3, R4, L4, L5, R3, R5, R4, R1, L2, R3, R5, L5, L4, L1, L1"

c = [ 0,  0,  0,  0]
d = 0 #Direction facing
for b in myInput.split(", "):
    d += {"L": 1, "R": -1}[b[0]]
    c[d&3] += int(b[1:])

print c #c[0], c[1], c[2], c[3]
print c[0] - c[2] + c[1] - c[3] #Remove the sign.

#Extra:
print d #Difference between L and R turns.

Edit: Replaced if block with dictionary check, and swapped regex with the more simplified.
« Last Edit: December 04, 2016, 09:07:35 PM by Fox » Logged

Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...
*Cross my fingers and hope we have Big Brother All-Stars next year... with Paulie & Cody Califorie(sp?)... and Vanessa & Tiffany Rousso.... Would be fun? :P Especially if one of the boys got evicted early since there's usually some all-guy alliance in there, right?
View Profile
Luna_blade
The last member of the Luna clan
Luna Clan

Great Member
*

Coins: 0
Offline Offline

I am: Timeless. As in, i don't have much free time.
Posts: 533

« Reply #1 on: December 04, 2016, 12:33:10 PM »

Do you write super short Python, or is it naturely this short?
Logged

++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.
View Profile
Fox
Fox McCloud, the Hacking Doctor
Mercury Clan

Prodigy
*

Coins: 28
Offline Offline

I am: certainly not a Gallant!
Clan Position: Head Gallant
Posts: 2340

« Reply #2 on: December 04, 2016, 04:49:25 PM »

Um? Both? Well, it depends on the coder... ( For example, someone who divides things up might code like https://github.com/jldork/Advent_04/blob/master/room.py , but that's a spoiler for today's AOC. ... And yeah, I looked on reddit to see what everyone's talking about. :) )

Someone else also tried Day 1, and their code was a bit longer than mine... They had written out if blocks for the caps, where-as I just &3.

My Part 2 for the Day 1 challenge was a bit longer than Part 1 as well... I didn't look into much optimizations.

Spoiler for Hiden:
import re
a = "R4, R3, L3, L2, L1, R1, L1, R2, R3, L5, L5, R4, L4, R2, R4, L3, R3, L3, R3, R4, R2, L1, R2, L3, L2, L1, R3, R5, L1, L4, R2, L4, R3, R1, R2, L5, R2, L189, R5, L5, R52, R3, L1, R4, R5, R1, R4, L1, L3, R2, L2, L3, R4, R3, L2, L5, R4, R5, L2, R2, L1, L3, R3, L4, R4, R5, L1, L1, R3, L5, L2, R76, R2, R2, L1, L3, R189, L3, L4, L1, L3, R5, R4, L1, R1, L1, L1, R2, L4, R2, L5, L5, L5, R2, L4, L5, R4, R4, R5, L5, R3, L1, L3, L1, L1, L3, L4, R5, L3, R5, R3, R3, L5, L5, R3, R4, L3, R3, R1, R3, R2, R2, L1, R1, L3, L3, L3, L1, R2, L1, R4, R4, L1, L1, R3, R3, R4, R1, L5, L2, R2, R3, R2, L3, R4, L5, R1, R4, R5, R4, L4, R1, L3, R1, R3, L2, L3, R1, L2, R3, L3, L1, L3, R4, L4, L5, R3, R5, R4, R1, L2, R3, R5, L5, L4, L1, L1"
wordList = re.sub("[^\w]", " ",  a).split()

#Part 2
d = 0
mxy =
  • * 1000000 #Random-ish number. But array-size.
x = 0
y = 0
for b in wordList:
    if b[0] == 'R':
        d -= 1
    if b[0] == 'L':
        d += 1
    d = d & 3
    i = int(b[1:])
    while i > 0:
        if mxy[y*1000+x] == 1:
            print x, y
            break
        mxy[y*1000+x] = 1
        if d == 0:
            y += 1
        elif d == 1:
            x += 1
        elif d == 2:
            y -= 1
        elif d == 3:
            x -= 1
        i -= 1
I think the forum BBCode stuff is messing up something. :/ Don't mess with my
  • , forum!

I don't know all the Python tricks yet, but it is possible it could be even shorter than that.
Like the L and R checks:
- Not sure if Python has a ? : operator.
- Could probably use a dictionary type.
« Last Edit: December 04, 2016, 05:12:45 PM by Fox » Logged

Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...
*Cross my fingers and hope we have Big Brother All-Stars next year... with Paulie & Cody Califorie(sp?)... and Vanessa & Tiffany Rousso.... Would be fun? :P Especially if one of the boys got evicted early since there's usually some all-guy alliance in there, right?
View Profile
Pages: [1]   Go Up
  Print  
 
Jump to:  

Cbox
Yesterday at 08:59:37 PM
Fox: Same... depending on whether they've used tricks instead or not.
Yesterday at 08:02:49 PM
Salanewt: I could see it counting.
Yesterday at 11:24:44 AM
Fox: Not sure if Zelda (LttP/Minish Cap) count or not...
Yesterday at 11:23:00 AM
Fox: Appararently, I can't think of many GBA games that do the psuedo-3D thing. (That being 2D maps with 3D-like collision...) Golden Sun and Superstar Saga come to mind, though... but I'll need to think about others, since it is quite possible i've simply forgotten....
August 19, 2017, 03:45:19 PM
Fox: Hmm... Thought: What if Isaac and co. weren't on Jupiter Lighthouse when Felix and co. were... I wonder if the story could have had a huge expansion, in this case.
August 18, 2017, 12:18:56 PM
Fox: Welcome back!
August 18, 2017, 09:12:43 AM
Luna_blade: back from vacation
August 17, 2017, 02:29:26 AM
Fox: That moment when you realize that there is a lot of chatting going on on Discord, that there is no point in trying to keep up. :P  Hm....
August 16, 2017, 04:50:22 AM
Fox: (Then again, just because posting is disabled, doesn't necessarily mean the buttons would be removed as well.)
August 16, 2017, 04:48:55 AM
Fox: (I mean, buttons I would expect to be similar to that.... rather than those specifically since I recall posting there to be disabled.)
August 16, 2017, 04:33:02 AM
Fox: Yeah... I like to think of it as a page loaded with ads. And it's not just the forum home page either... check the sub-forums/topics themselves. == New Topic/Reply/etc. buttons were affected.
August 15, 2017, 07:04:30 PM
Salanewt: Lol, nice. :P
August 15, 2017, 06:33:02 PM
Foxhttp://z9.invisionfree.com/Golden_Sun_Hacking/index.php? == Hahaha! GSHC Classic looks funny now that Photobucket killed the images. :P Anyway, how is everyone doing today?
August 14, 2017, 07:12:02 PM
Salanewt: So yeah, I'm typing up a non-academic essay on why GS2 was rushed; expect that sometime soon!
August 07, 2017, 05:53:11 AM
Fox: But anyway, such a hack mod is simply an idea, and I do not have any current plans to work on it at this time, so.....
August 07, 2017, 05:51:46 AM
Fox: Okay, cool. I think my idea works best without an ability to swap PCs (OR to just simply make that use it the PC's turn.) Hmmm... And with that, I question if a turn list is even needed with my approach. (Outside of maybe 1 entry, if that shortens the modifications.)
August 07, 2017, 05:13:26 AM
Salanewt: To be honest I've been thinking of expanding the battle turn section and also adding code for PCs to have more than two turns in the AI overhaul, but I probably won't allow anyone to have more than four.
August 06, 2017, 12:22:17 AM
Fox: Oh, and if that approach was taken = Would like to also have it so you select the spell to use when it is actually your turn rather than at round start.
August 06, 2017, 12:12:37 AM
Fox: Would take a lot of balancing, but I can see an adept being very slow, and yet very powerful.
August 06, 2017, 12:06:11 AM
Fox: And bosses can have an Agility that is above half of the maximum possible Agility. Mwahaha.

Affiliates
Temple of Kraden Golden Sunrise
Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!
Page created in 0.089 seconds with 22 queries.