Giter VIP home page Giter VIP logo

lemin's Introduction

LEMIN

'School 42' good algorithmic project. Optimized graph and minimum-cost flow (disjoint path finding).

This is the subject. (Sorry for Google, but by law, I can't upload tasks.)

More detailed description posted on wiki

Foreword

  • Project based on my libft
  • Be welcome to use my project, clone and fork it!
  • If you find a bug, please, create new issue (or contact with me in any way you want) to report about it! I will be glad to fix it! If you find a mistake in my spelling (because I'm from Russia, and English is not my native language), please notify me too!
  • If you clone/fork this lib and realise some new feature, you can create pull request! I am definitely interested in this!
  • Also, I will be happy if you follow me, or star this project, ecpecially if you find it usefull, or use my code!
  • For all questions be welcome to contact me in any way you want 👋

Here is my mail: [email protected]

How to use:

1. Compile

  • run make or make lem-in to compile lem-in
  • run make clean to delete tmp files after compile (only lem-in will be remain)
  • run make fclean to delete all files after compile
  • run make cmake if you change any filename.c/h to update the configuration of build (and include new file)
  • run make re to recompile all files

There is no real need to do this! If you change a file and run make, the project will recompile this file, as well as all files that depend on this file and relink the lem-in!

2. Debug

If you run make or make lem-in, the compiler will compile the project with the -O3 -Wall -Wextra -Werror flags for better code performance and strict error checking! But if you want to debug some code, you probably want to ignore warnings and be able to use a debugger (lldb, gdb, etc.). In that case

  • run make debug

lem-in.debug will be created, and compiler flags now will be -g3 -Wall -Wextra.

3. Using

Example of using:

  • `./lem-in < ./test_maps/test_spec

For easy cheking of result use grep:

  • ./lem-in < ./test_maps/pylone_400_10_10_35_35_3_no_z | grep '#>'

Also you may use map generator (provided by Ecole42):

  • ./test_maps/generator --big-superposition | ./lem-in | grep -E '#>|#Here'

For real nice and useful visualisation look here - my friend's @SemRunner implementation

NORMINETTE

If you are part of the 42 society, you now all about the norminette and you may skip this part. Otherwise, you may discover some strange code and /file_structure in this project. This is becouse all project in 42 must be written in accordance with the NORM (Again, sorry for Google, but by law, I can't upload tasks.).

Here are the point that most affect the code:

  • You cannot have more than 5 function-definitions in a .c file.

We have programm called norminette. It check every project. If it found an error, project considered as FAIL

License

  • See the LICENSE file for license rights and limitations (MIT).

Support

  • If you like my activity, you may say “thank you” to me and support me for any amount! Use 'Sponsor' button in github!

lemin's People

Contributors

elijahkash avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.