# 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 #200: Sudoku Solver

Highlighted
8 - Asteroid

Hi

Please find attach the beginner solution

Highlighted
7 - Meteor

My solution for the beginner challenge

Spoiler

Highlighted
7 - Meteor

I just tried to post but I seem to have lost it -

Anyway here's my solution to the advanced section. I didn't include the other bits as they are needed to do the advanced.

Spoiler
Highlighted
Alteryx Partner

Advanced done, write a little iterative macro to fill the blanks.

Spoiler

it's hard to find the general solving rules for all the sudoku, but it's definitely an interesting topic, will dig deeper later

5 - Atom

Solution attached (works for all levels). Went for the strategy I use to solve them though Alteryx does it a bit faster.

Highlighted
Alteryx

My beginner solution:

Highlighted
8 - Asteroid
Spoiler

I'll have to come back around for the intermediate and advanced.

Highlighted
8 - Asteroid

I solved the beginner level.  Will need to spend more time on the intermediate level puzzle on another day.

Highlighted
7 - Meteor

Beginner and Intermediate Solution attached below

Spoiler

Highlighted
16 - Nebula

To understand recursion...

First you must understand recursion.

Went with a python solution as that seemed to be the most direct approach to crack the advanced part of this challenge

Spoiler
The solution can be broken down into:
- Is the current board solved - if yes then stop
- if not, then find the first open position:
- For every valid move in that positoin:
- Try the move - and then try to solve the resulting board (just feed it into this same process)
- If this works then you have a solution, if it doesn't then the number that you tried didn't belong there - try a different number

ResultThe Canvas
#SnakingMyWayThruChallenges