The quest for every beard type
dyers.org
dyers.org
Most people, if they were capable of growing these amazing moustaches, they would already be dictator of a small nation.
Not Jonathan E. Dyer. No, this man uses his beard growing skills for the benefit of science and humanity at large.
Most men only have one or two styles they could pull off and unfortunately it takes a while to find the right one…I suspect that's a big reason why many won't even try. A light beard isn't usually too great, either, but you can always dye it and use an eyebrow pen to retouch inbetween treatments.
We can transform it into a more classic problem (visit every single node) by adding more edges with weights, where the weight is how long it would take to grow enough beard to make an otherwise invalid transition.
I'm confident the graph construction can be done in poly time (O(n^2) edges), solving it is harder obviously! However, if this work is correct, we have a polytime reduction to TSP, thus showing that the "beard problem" is NP-complete.
Edit: Crap, that's the wrong way round to show NP completeness isn't it? You'd have to show that, given a TSP problem you can reformulate it as a beard problem. I'm not sure if a beard problem necessarily exists for every TSP problem, I'll think on it...
Update: Ok, the first part is to make sure we can represent all the nodes / edges, and we can. We just need to increase the number of segments (areas of hair growth we are concerned with) to match the number of nodes. If we have three nodes, A, B, C, then we need three areas corresponding to them. For a given node, we set the area corresponding to it to the maximum distance between that node and other nodes. Once this is done, we set the other areas so that the distance, in hair growth, from each node to the others matches the graph. This then works.
However, this only works for a complete graph. I can't think of a way to easily resolve that, i.e. make it not permissable to get from some nodes to others without going via intermediaries... You could make it so going from one beard style to another means you will have a third along the way, but it seems non-trivial to enforce that.
So, we can reduce TSP on a complete graph to a beard problem. I think we can maybe convert a non-complete TSP to a complete one by adding arbitrarily heavy edges? However, this would necessitate extremely long beards, perhaps impossibly long. Thoughts?
I'm not sure that your reduction from TSP works. Given two nodes A and B, I understand that you're setting their distance on the associated facial areas to match the distance in TSP, but what if they're forced to be even more distant on the area corresponding to some other node C?
I still use the basic technique when switching from a clean state to a bearded state - it si much easier to shape a beard than grow a shaped beard.
Advanced variations on the technique do exist however. I recently went from a van-dyke to what the article calls "the hollywood". However, to appropriately do this I needed to grow out the jaw portion of the beard. So to do this had to take it in phases:
1. stubble out for 2 weeks to get enough base
2. shave to a pattern similar to what the article calls "Rap Industry Standard", but with thicker lines and a full van-dyke at the mouth end.
3. Let it fill in towards the front, keeping the line from sideburns to jaw trimmed short. Also slowly widen the jawline part near the goatee -- a triangle will eventually form.
4. Using a razor, disconnect the sideburns and properly shape the rest.
1) Grow a huge beard. 2) Put yourself in a comfortable and repeatable pose, i.e. fixate a point in space, shoulders back, make sure you are able to repeat the position you are in. 3) pick 1-5 camera poses around you. 4) with your huge beard take pictures from every camera position in various lighting settings, or have a friend do it. 5) shave, standing in place if it has to. 6) take pictures again. 7) with photoshop or gimp overlay the beard picture on top of the beardless one and delete and clone parts of your beard ! 8) since this is hacker news, the post would not be complete if you do not: 8.1) create a startup from it ;)
Of course you'll have to learn to put up with lots of looks of disapproval, and old ladies holding their purses tighter around you, but that is worth it in its own right too.