Skip to content

codingteam/icfpc-2016

Repository files navigation

icfpc-2016

This is our solution for ICFP Contest 2016.

We are holding 50th place.

Solution

To build the solution, install stack run the following script:

$ cd src
$ stack build

There're multiple executable programs explained in the following sections. There're also some simple scripts apitool.py, gensvg.ps1, gensvg.sh for various batch tasks.

testSolver

It is the simplest solver.

$ stack exec testSolver -- -o zomg.svg # and type the following:
4
0,0
1,0
1,1
0,1

visualize

It helps to visualize tasks in SVG format.

Help message doesn't say so, but visualize requires a filename as a parameter, like this:

$ visualize -o test.svg -w 400 ../problems/problem_1.txt

generator

This program generates new submissions.

$ stack exec generator

testSolver

Solves one task.

$ stack exec testSolver -- ../problems/problem_10.txt -o ../10.svg -h 500 -w 500 > ../10.txt

solveAllTrivial

Solves trivial tasks (the ones where the initial square was only moved and/or rotated without actual folding).

$ solveAllTrivial done.txt problems/ solutions/

solveAllSimple

Solves simple tasks (only convex polygons).

$ solveAllTrivial done.txt problems/ solutions/

unfoldingSolver

An unfinished prototype where we wanted to find crease patterns by unfolding the skeleton back into a square.

$ stack exec -- unfoldingSolver ../problems/problem_10.txt

deconstruct

A tool we wrote in an attempt to solve problem No.101 manually. It generates a bunch of SVG files where each vertex in skeleton is described separately.

The idea is to mark these points on a paper crane, then unfold it and write a solution entry by hand.

$ stack exec -- deconstruct ../problems/problem_101.txt

Team

Team members in randomized order:

About

Сodingteam's ICFP Contest 2016 submission

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published