Solution to the Giant Pyramid puzzle

Overview

Giant Pyramid Solver

This is a repository for the solver and the solution for the Giant Pyramid puzzle

I bought mine around 2000. As of 2017 it is no longer sold. There is some description of the puzzle on this page: http://www.gamepuzzles.com/giantpyr.htm The author of the puzzle claims that there is only one solution. In fact there are 2 solutions that are mirror images of each other. I emailed him about it and he claimed that the mirror images do not count as they are the same. Think about that next time you want to put a left glove on your right hand.

The Giant Pyramid is a tetrahedron composed of 35 balls, 5 balls to a side. It is assembled from 9 pieces of 6 different kinds (4 pieces are the same). 8 pieces are made of 4 balls and 1 piece is made of 3 balls. The goal of the puzzle to put the pieces together to form a perfect tetrahedron.

The 9 pieces:

A few pieces on the base (not necessarily in place):

The text on the back of the base:

Pyramid layers with position labels

     0
    1 5
   2 6 9
  3 7 10 12
 4 8 11 13 14

       15
     16 19
   17 20 22
 18 21 23 24

     25
   26 28
 27 29 30

   31
 32 33

 34
 

Piece labels

  1. 3-ball
  2. piece with a 60-degree arm
  3. piece with the triangle
  4. trans-piece
  5. cis-piece
  6. the piece with 90-degree bend
  7. Same as 6
  8. Same as 6
  9. Same as 6

Positions of the pices in the solved puzzle:

 Piece id: 1 1 1 4 3 6 7 4 3 2 7 8 2 7 2 6 6 6 3 2 4 9 4 8 7 5 5 3 8 9 8 9 5 9 5
 Index:    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4
 1   0,1,2
 2   9,12,14,19
 3   4,8,18,27
 4   3,7,20,22
 5   25,26,32,34
 6   5,15,16,17
 7   6,10,13,24
 8   11,23,28,30
 9   21,29,31,33
 

Solved puzzle

Solver

The brute force solver would have to check 883,702,234,255,196,160 (or 8.8E17 positions). Intruducing a basic constraint - if a combination of piece positions already has a clash where two balls occupy the same space, then no further checking will be done on this combination - pares down this number to 52.6 million. This number can be searched on a modern MacBook Pro laptop in 3.06 seconds.

You might also like...
A super slim solution to the nested asynchronous computations

Me A super slim and in-place solution to the nested asynchronous computations problem The mindset of software developers is changing, async programmin

A super slim solution to the nested asynchronous computations

Me A super slim and in-place solution to the nested asynchronous computations problem The mindset of software developers is changing, async programmin

Campus Atlas -- a Mapping & GIS solution which provides easy access to navigating the campus around you.
Campus Atlas -- a Mapping & GIS solution which provides easy access to navigating the campus around you.

Campus Atlas Welcome to Campus Atlas -- a Mapping & GIS solution which provides easy access to navigating the campus around you. Technical Implementat

Simple solution to localize your iOS App.
Simple solution to localize your iOS App.

Hodor is a simple solution to localize your iOS App quickly, allow you to change language of project in-app without quiting the app, Just like WeChat.

ChatLayout is an alternative solution to MessageKit.
ChatLayout is an alternative solution to MessageKit.

ChatLayout is an alternative solution to MessageKit. It uses custom UICollectionViewLayout to provide you full control over the presentation as well as all the tools available in UICollectionView.

OctopusKit is a simplicity but graceful solution for invoke RESTful web service APIs
OctopusKit is a simplicity but graceful solution for invoke RESTful web service APIs

OctopusKit OctopusKit is a simplicity but graceful solution for invoke RESTful web service APIs,it can help coder develop app based MVC pattern, it ca

A simple solution to decrease build time and more cleaner codebase

Swift Optional Optimizer A simple Protocol Oriented solution to decrease build time and more cleaner code base. Are you tired of using ?? in your code

A simple solution for tiring [weak self] in swift

Weakifiable A simple solution for tiring [weak self] in swift Usage give this repo a Star ⭐️ Add EBWeakifiable to your Project. simply after each clos

A simple solution to show a toast message by writing single one line of code
A simple solution to show a toast message by writing single one line of code

easySwiftToast A very simple solution to show a toast message by writing single one line of code. Installation easySwiftToast is available through Coc

ImagePicker : an all-in-one camera solution for your iOS app
ImagePicker : an all-in-one camera solution for your iOS app

Description ImagePicker is an all-in-one camera solution for your iOS app. It lets your users select images from the library and take pictures at the

Newly is a drop in solution to add Twitter/Facebook/Linkedin style, new updates/tweets/posts available button
Newly is a drop in solution to add Twitter/Facebook/Linkedin style, new updates/tweets/posts available button

Newly is a drop in solution to add Twitter/Facebook/Linkedin style, new updates/tweets/posts available button. It can be used to notify user about new content availability and can other actions can be triggers using its delegate method.

A drop-in universal solution for moving text fields out of the way of the keyboard in iOS

TPKeyboardAvoiding A drop-in universal solution for moving text fields out of the way of the keyboard in iOS. Introduction There are a hundred and one

Multi-tier UIScrollView nested scrolling solution. 😋😋😋
Multi-tier UIScrollView nested scrolling solution. 😋😋😋

Multi-tier UIScrollView nested scrolling solution. Snapshots Requirements iOS 9.0+ Xcode 10.0+ Swift 4.2+ Installation CocoaPods CocoaPods is a depend

ExpandedTabBar is a very creative designed solution for
ExpandedTabBar is a very creative designed solution for "more" items in UITabBarController

ExpandedTabBar is a very creative designed solution for "more" items in UITabBarController. It's greate experience to have more comfortable and intuitive UI.

Highly customizable drop-in solution for introduction views.
Highly customizable drop-in solution for introduction views.

EAIntroView - simple iOS Introductions This is highly customizable drop-in solution for introduction views. Some features (remember, most features are

ESCapey - An ESC key solution for new Apple Laptops
ESCapey - An ESC key solution for new Apple Laptops

ESCapey An ESC key solution for new Apple Laptops Motivation Welp, here's the problem. You use a cool text editor, and you really need access to a har

BetterBlock is the #1 AdBlocking solution for iOS

BetterBlock BetterBlock is the #1 AdBlocking solution for iOS. BetterBlock has auto-updates, no bootlooping (cough cough MYbloXX), easy setup, no batt

TestKit has been upgraded to a full solution for implementing Behavior-Driven Development (BDD) in Swift iOS apps.

The easiest way to implement full BDD in your Swift iOS projects! Use plain English specs (Gherkin) to drive tests that include both UI automation and interacting with application data & state.

PRGTipView is a drop-in solution for adding onboarding tips to your apps
PRGTipView is a drop-in solution for adding onboarding tips to your apps

PRGTipView PRGTipView is a drop-in solution for adding onboarding tips to your apps. It supports: Title, detail and dismissal button Give focus on a p

Owner
Max Khrapov
Max Khrapov
Simon Tatham's Portable Puzzle Collection

This is the README accompanying the source code to Simon Tatham's puzzle collection. The collection's web site is at <http://www.chiark.greenend.org.u

Greg Hewgill 104 Dec 25, 2022
iPhone and iPod Touch version of Skeleton Key: is an addictive and unique puzzle game in which you shift keys around the board unlocking treasure chests. Made with cocos2d-iphone.

Skeleton Key (iOS) Skeleton Key is an addictive and unique puzzle game in which you shift keys around the board unlocking treasure chests. It's availa

null 117 Jun 6, 2022
IHKeyboardAvoiding is an elegant solution for keeping any UIView visible when the keyboard is being shown - no UIScrollView required!

IHKeyboardAvoiding An elegant solution for keeping any UIView visible when the keyboard is being shown Requirements IHKeyboardAvoiding Version Objecti

Idle Hands Apps 1.4k Dec 14, 2022
A type-safe, high-level networking solution for Swift apps

What Type-safe network calls made easy Netswift offers an easy way to perform network calls in a structured and type-safe way. Why Networking in Swift

Dorian Grolaux 23 Apr 27, 2022
🌏 A zero-dependency networking solution for building modern and secure iOS, watchOS, macOS and tvOS applications.

A zero-dependency networking solution for building modern and secure iOS, watchOS, macOS and tvOS applications. ?? TermiNetwork was tested in a produc

Bill Panagiotopoulos 90 Dec 17, 2022
📖 A lightweight, paging view solution for SwiftUI

Getting Started | Customization | Installation Getting Started Basic usage Using Pages is as easy as: import Pages struct WelcomeView: View { @S

Nacho Navarro 411 Dec 29, 2022
McPicker is a customizable, closure driven UIPickerView drop-in solution with animations that is rotation ready.

McPicker About McPicker is a UIPickerView drop-in solution with animations that is rotation ready. The more string arrays you pass, the more picker co

Kevin McGill 207 Dec 13, 2022
A caching and consistency solution for immutable models.

?? Data Rocket Data is a model management system with persistence for immutable models. Motivation Immutability has many benefits, but keeping models

Peter Livesey 652 Nov 11, 2022
UIAdapter - An elegant solution to the iOS screen adaptation problem

UIAdapter - An elegant solution to the iOS screen adaptation problem ???? 天朝子民 Features Numerical type fast conversion Storyboard equal scale adaptati

LEE 39 Dec 25, 2022
Hyperledger Sawtooth is an enterprise solution for building, deploying, and running distributed ledgers (also called blockchains).

Hyperledger Sawtooth SDK Hyperledger Sawtooth is an enterprise solution for building, deploying, and running distributed ledgers (also called blockcha

Ann 1 Oct 29, 2021