Cue the BSD vs MIT license flame wars over whether the BSD license is free enough or whether one needs the sublicense right grant in the MIT license to achieve full freedom ;-)
Yes you are. It's O(nlogn) where n is 5 - i.e. it's constant time (you can easily find the median by 4 comparisons to find the smallest of the 5, followed by 3 comparisons for the 2nd smallest, followed by 2 comparisons for the median - a total of 9 comparisons)
No it's not. Good design is about solving a problem, and you can't do that without understanding the problem. Just like you (and me! because I'm a compiler programmer, at heart) can't really solve a problem we don't understand. You can't come to me and tell me to build you a mobile app for your business, just because I know the ARM architecture... I need to understand your business first.
You know what's funny? We use the word "design" for software, and you wouldn't think that you could run a contest to pick the design of a software system. But nevertheless you think someone can design his communication strategy & brand identity by a contest, without spending the time to write down the requirements first.
To the OP: my advice is, just don't bother with a contest or a logo. Find someone (a friend) who is good at typography, and ask him to typeset the word "Tarsnap" for you in a way that looks good on that banner. Just use that as a logo, until you have the time & resources to hire someone to do a proper brand identity for you (because that's what you are asking for here, not just a logo)
This.
I can't believe nobody else pointed out that it's not n-squared.
(but, lots of people pointed out that complexity is really about reasoning not about memorisation - and you have to be good at reasoning in order to be a good programmer).
And this is not an "esoteric question" - you should really have a good grasp on complexity in order to understand the limitations of your system, and when you can use certain algorithms/data structures, and when you can't.
See this write-up: http://www.infoarena.ro/blog/numbers-everyone-should-know - but don't memorize the numbers, that would be pointless - the idea is to get a feel of why complexity is important.
(you'll notice for instance that between O(n!) and O(n^2) there is a 2-3 orders of magnitude difference in the acceptable input data size... so your confusion between factorial and n-squared is actually quite big)