Weekly Challenge

Solve the challenge, share your solution and summit the ranks of our Community!
IDEAS WANTED

We're actively looking for ideas on how to improve Weekly Challenges and would love to hear what you think!

Submit Feedback
We've recently made an accessibility improvement to the community and therefore posts without any content are no longer allowed. Please use the spoiler feature or add a short message in the message body in order to submit your weekly challenge.

Challenge #154: Permute the Data

Highlighted
Alteryx Community Team

Last week's solution can be found here.

This week's solution is working to permute some data!  This challenge is derived from an question asked by @iellingsonbg, and was solved by the illustrious @MarqueeCrew@MarqueeCrew then messaged us letting us know a great challenge was available that we should tackle! If you ever have a great challenge of your own or see another problem around the Community worth tackling, let us know!

As for the challenge itself, we are presented the options (tools). What we would like to do is determine all the combinations these tools can exist in an 'on/off' state. For three options we can see the following combinations. Note that the end result data is not formatted this way, but simple formatted here for ease of understanding.

 Browse Input Output Off Off Off Off Off On Off On Off Off On On On Off Off On Off On On On Off On On On

If you want to take a more difficult route, try to setup your workflow where it would be dynamic to handle more than three tool options and more toggle options than on/off!

Highlighted
Alteryx Certified Partner

Illustrious is very kind of you.  I'll defer posting a solution until the real challenge guru's come up with some interesting alternatives.

Cheers,

Mark

Alteryx ACE & Top Community Contributor

Chaos reigns within. Repent, reflect and reboot. Order shall return.
Highlighted
16 - Nebula

I had a little bit of a headstart as I tried to solve @iellingsonbg's original problem. Thanks @MarqueeCrew for putting this as a weekly challenge!

Spoiler
I've successfully overcomplicated another weekly challenge. I turned this into a pure math problem. For the original problem, I set this up where 0 = Off and 1 = On.
 Browse Input Output 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

So there's 8 rows of data since 2 toggles (ON/OFF) to the power of 3 items (Browse/Input/Output)  = 8. Then I realized that if I combined all the columns into 1 column, this is basically counting up in binary (base 2) with extra zeros padded to the left. Row 1 = 000(binary)= 0(decimal), Row 2 = 001(binary)=1(decimal), Row 3 =010(binary)=2(decimal). So now my table looks like this:
 Browse Input Output Binary Decimal 0 0 0 000 0 0 0 1 001 1 0 1 0 010 2 0 1 1 011 3 1 0 0 100 4 1 0 1 101 5 1 1 0 110 6 1 1 1 111 7

So to solve the problem, I generated my 8 rows of data with a simple recordID. Then I converted the recordID from Decimal to Binary. I created an iterative macro to do the conversion.

Note that my macro will scale to any number of tools and toggles. You basically just need to convert the recordID from Decimal (base 10) to base x (where x= number of toggles) which is what it's doing.

Highlighted
Alteryx Certified Partner

How horizontal of you!  Have you switched axis?  I haven't noticed before.

Cheers,

Mark

Alteryx ACE & Top Community Contributor

Chaos reigns within. Repent, reflect and reboot. Order shall return.
Highlighted
16 - Nebula

@MarqueeCrew I've finally given in on the weekly challenges. In my younger days I would change the weekly challenge to vertical before starting. I get along with @JoeM on most things but canvas layout direction is one we don't agree on. #Vertical.

Highlighted
Alteryx Certified Partner

@patrick_digan next I'll be seeing you sitting next to me on an airplane!

Alteryx ACE & Top Community Contributor

Chaos reigns within. Repent, reflect and reboot. Order shall return.
Highlighted
Alteryx Community Team

@patrick_digan

N

o

t

e

v

e

r

y

t

h

i

n

g

h

a

s

t

o

b

e

v

e

r

t

i

c

a

l

Alteryx Certified Partner
```                          b i k e
r            j
u                 u
y o                        m
t                                  p
s                                       s.  R i g
u                                                      h t
J                                                              ?```
Alteryx ACE & Top Community Contributor

Chaos reigns within. Repent, reflect and reboot. Order shall return.
Highlighted
Alteryx Certified Partner

Nice one, did a brute force way, but trying to find out a macro solution :)

Highlighted
17 - Castor

High School Math to the Rescue!

Thanks for the challenge @MarqueeCrew

Spoiler
Scalable solution that handles varying number of tools! Not varying toggle options though!  That will have to wait for a generic base-N macro.

Edit:  @patrick_digan IntToBin() does most of the heavy lifting.  But then again you have the Base-N macro that I still have to work on! DOH!

Dan