Home
metfan4vr's Journal
 
[Most Recent Entries] [Calendar View] [Friends]

Below are the 3 most recent journal entries recorded in metfan4vr's LiveJournal:

    Saturday, November 20th, 2004
    4:13 am
    What happens when I read...
    So yea I was attempting to read a book for my Geography of Development class, and I get to this part, where the author just hides half the numbers to bring attention to what he deems important. More specifically speaking, Back in 1999 when this was published, he felt the following was still quite a true statement. When looking for papers done on the topic of AIDS he found X of them, adding women he finds Y papers such that y<<x, adding poverty he finds exactly 0 papers on the topic. Astonishing. Repeating the same searches today on google yields numbers X, Y1 and Z1. Doing the searches on AIDS with " men " (to distinguish wo-men) and then adding wealthy yield Y2 and Z2. Y2 is about 10% of Y1 and Z2 is about 1/3 of Z1. Either this paper had a huge impact, or the author is a deceiving bastard which isn't a good face for writing a 300 page persuasive book. In any case, this whole thing got me thinking about class when we begin discussing the book, and I bring this up. And although my whole rant has been going through my head with slight variations for about 45 minutes now, the details of why exactly I got in front of the class and began ranting about society is fuzzy. But the antagonizing lecture I give is more of less fueled by feme-nazism. Because it's the feme-nazi's that would respond to such a bullshit spinning of the numbers and demand change. But before I explain that I have to side-step after using the term feme-nazi to say that I don't give a shit if anyone is offended by my using of that term. Something then goes in there about myself being German and Jewish and loving the Southpark Nazi jokes the commentator makes during the football game ("I haven't seen a Jew run like that since Auschwitz 1942"...or whatever the camp/year was), and that song/comedy routine/reality check, Underwear Outside the Pants, where the speaker remarks, "It's all about self-esteem in the schools these days" and goes on to elaborate it doesn't make sense, coming to the conclusion that there would be no women posing nude or making pornos (because of their self-esteem) to use his new high-speed internet connection. Now I point out saying I thought the class had a few feme-nazi's but it turned out I was wrong, pointing out as an example this cute girl who has a boyfriend at Drexel according to thefacebook.com. Despite being wrong though, I am quick to iterate that I will continue to make stereotypes because to neglect one's own stereotyping is to neglect one's humanness, but one must learn from incorrect stereotypes in order to make better predictions in the future. I stop for a second and ask if there are any responses, and this one fag says about 4 words before I interrupt and rant on how after getting sick of hearing myself whine the last 5 minutes, I'd rather do it for another 10 as long as it drowns out the sound his worthless opinion. Explaining how he chose a Geography major (once again according to facebook) simply because he wants an easy major to get through college with and spend the remainder of his time partying with his frat brothers. I go on to say how his immediate future holds a cubicle job and marriage to a beautiful wife who's one great fuck. However the whole wife thing is really a chain of marriages and divorces because he's too incompetent to realize a relationship is more than just looks and sex. Feeling a bit self-expressive I go on to say that I too respond mostly to looks, but I'm not actually dumb enough to attempt to convince myself and whichever woman a relationship exists in order to get the goods when I feel like it. Once again though, not intending to talk shit about all Geography majors, I turn back to the cute-girl and say how she actually cares about what she studies and puts thought into it with the intention of somehow in the end making a better world. She being someone who chose Geography because it interests her and wants to make some sort of academic contribution to the field. At this point I say that I will not be able to return to the class, not because I am embarrassed of my thoughts, but because I'm embarrassed I actually got up there and spoke about them in such a outrageous behavior; and outrageousness, when in context of communicating ideas, is socially unacceptable. So yea that's the type of stuff that goes through my mind all too often when I'm trying to read, regardless of whether its a book assigned for school or some fiction book recommended by a friend, which I have read excerpts from and find quite entertaining. Though at the same time it seems I can read a book on algorithms and game theory, or anything that intends for the reader to read a little bit, stop and work it out for themselves, understand it and continue, without any sort of distractions described above.
    Sunday, November 14th, 2004
    10:36 pm
    ACM GNY Regional
    The practice I've endured through (ok enjoyed) for the past 3 or so months came to culmination earlier today, and we were so close to success that I feel bad for only finding out about this entire world of competitive algorithmic programming so late into my academic career. Being I'm still on a high about how well I did at the start, I shall toot my own horn for a bit before exposing some gory details about how things could have gone differently. I had the first submission of any team in the entire contest at 9 minutes in, and yes, it was correct. This should have easily been a 5-6 minute submission, however having to create my own template file for the remainder of the match, I had mistakenly been writing the program to this template file, yet attempting to compile what I thought I was writing in. After much searching with help from both teammates, I had seen the careless mistake and thankfully the program ran as expected and it was rushed to submission. The secret to solving a problem in 5 minutes that has an introduction that can easily take 3+ minutes to read? Just skip the entire problem statement, look at the picture and input/output and go on pure faith (ok I had to glance back for specific details such as the radius of each ring of the bullseye, but it was a fairly safe guess as to what the program was supposed to do).

    While I was finishing this up, my teammate Joe had figured out how to do the second problem so I begin looking through the problem set again, and I did not have to look far to find the next problem to attempt for it was problem C. This was an extremely simple DP problem, and with Joe needing a few minutes to get some cases straight made the excellent team decision to give the computer up while reviewing his printout of the code he had written. I wrote the solution quite quickly for the recursive part is very nice and compact if you do it right, however due to what I will refer to as, Halo 'til 2AM the night before and a bad case of the shits giving myself a whole 1.96 hours of sleep, I made a few careless mistakes such as the initial run case which cost us a few precious minutes. While looking for these mistakes I had given the CPU back to Joe who immediately finished the second problem and submitted(later deemed correct as well) and we were once again the first place team (not that any problems were being judged nor were the standings working at the moment). I saw my careless errors and fixed the program to another wonderfully working algorithm, but I did not test the large case where the result would be extremely large, specifically meaning it might not fit into the integer which I was forcing it into. The solution was incorrect for the exact reason, but because no submissions were being judged until over an hour into the contest, I had not known of the outcome for another 40 minutes. When finally receiving the result, I cursed myself and quickly made the necessary changes and a quick resubmission. Despite that delay we were still the second team to get the problem correct at 86 minutes. Though it was not marked as correct initially, the judges output data was wrong and it was telling everyone they had the wrong answer, so I actually spent another 15 minutes looking at my printout and another 5 on the computer testing cases before concluding that my program was in fact correct. At about the 3 hour mark the judges had recognized this, got the correct data, and re-checked all the submitted files.

    Sadly, this is where my run ends, for I have turned into an extremely fast and accurate coder on trivial problems and easy DP problems which I have the pleasure of seeing. We had a few ideas for other programs, but due to tricky wording and not being sure on how many moves our algorithm made, we held off on solving a problem that was actually extremely simple, though we did get it on our first submission at the 255 minute mark.

    The story not told is that one member of the team, who can actually solve a problem or two, writes very very shitty code. Meaning he has gargantuan amounts of compile errors and although his algorithm may very well work fine, he has some inabilty to code it bug-free. It's quite amazing actually. He'll sit there debugging this huge pile of steaming shit because instead of converting a card to its value, he keeps the string it was inputted as (playing card such as say 8H for the eight of hearts), and throws each ugly string hundreds of times into some sort of compare function. And given three cards, instead of ranking them and finding which order they are in, he has all 6 possible ways in one huge nested if-else block that has 2 arguments to each, which was only one of his hard to keep straight bugs that apparently wasn't the only god damn problem when I pointed out how wrong it was. On this one card problem, which is nothing more than basic simulation he had managed to sit in front of the screen debugging for an entire 150 minutes. Had there been two computers I would have solved this problem in parallel to him without his knowing and all would have been well.

    The last problem in the set was obviously another DP problem that could be coded in approximately 15 lines (I did it after the event in 9 lines not including i/o and initialization functions), but I couldn't grasp exactly how to do it. Ben, the coach, had told me how to do it while trying to figure out which train would bring us to Penn Station and I was upset at how close I got, but not really too disappointed because this was quite a different way to break down a problem than I have seen in the past, and I'm not really an innovative person. I can bang my head on the wall as well as the next guy and figure something out, but a half hour wasn't going to be enough time, however I do have a pretty good memory apparently and I now have another little trick in my arsenal.

    All in all the competition was great fun. It was totally amazing to compete against 60ish other teams from the NY/NJ area and come in 8th overall. Rutgers is well known for its shitty undergraduate CS program, almost nothing that is taught is actually useful for this type of problem solving, and when I say this type, I mean the very heart of Computer Science. It really is quite sad that we have exactly 1 algorithms course and it is rooted in essentially trivial algorithms such as shortest-path and minimum spanning trees, some sorting and basic proofs of the lower bounds to the big-Oh of any algorithm made give an answer to common questions(like sorting...). I'm extremely proud of the other two teams which came in 2nd place overall (and have "an excellent chance" of going to the World Finals in Shanghai, China...fucking China, this is big shit) and 16th. Rutgers, in my unofficial but scientifically acceptable opinion, was statistically the best school at the competition. Our top two teams(2nd and 8th) beat any pair of top two teams from any other school including last years champion Cornell(7th and 20th), Columbia(3rd and 22nd), Stony Brook(6th and 9th) and Stevens(4th and 23rd) of the notable mentions. Also despite Stony Brooks 3rd place team finishing higher than our 3rd (their 14th to our 16th) the total sum of the ranks puts us at a lower score, which in golf terms means we're also better on the top 3 teams between us. NYU wound up taking first place overall, a huge congratulations for them catching 2 problems in the last hour where all results were hidden from competitors (oh and their second place team was 12th). This was only Rutgers second year in the competition, and from what I know, last year there was no real coach, just 3 guys who wanted to give it a go. I'm totally fucking proud of what we did, we made a huge impact in the Greater New York Region, and although it seems many of the seniors will move onto graduate school or real jobs elsewhere, we have 2 incredibly strong candidates for upcoming years including one fucking amazing freshman named Adam who learned graphs and dfs'ing in a single day and correctly coded a program a senior on our 2nd place team could not. Also Siwei (a junior I believe, certainly not a senior) is an extremely promising candidate for computational geometry problems along with math and general ad hoc problems. Though a disappointing note is I'm not sure if these two are going to start practicing some more for next years contest than they did for this years.

    The biggest reason for our success was our coaches Ben and Bin. Bin did all the bitch-work like getting us registered and getting people to the contest and judging our practice contests every week while Ben was the solution machine. He could solve almost any problem we ran across. He's one fucking amazing guy and without his ability to answer all the questions we came to him with, we never would have got to where we were (well maybe Chris and team 1 might have...though I'm not sure if Ben and the practice was the reason he warmed up to the beautiful simple solutions given by recursion, or he just took his head out of his ass!) Ben and Bin put some serious hours working with us and I like to think we made them proud. We may have had 2 all senior teams, but for 5 of us it was our first time doing the contest, and all 5 had been practicing since about July at the earliest. Had we been training since freshman year, I wouldn't have been surprised at all if both of our teams came in 1,2 with 7 out of 9 problems.

    As far as upcoming years, it seems as if Ben is going to get his PhD and rightfully get on with his life outside of Rutgers. Bin I'm unsure about but I certainly would love to help coach and keep our students motivated. It would be a learning process for everybody, but eventually I like to think with enough work I could at least figure out most of the problems within a day or two on my own, and I'm sure Ben wouldn't ignore an email for a little help here and there.

    As this post is coming to a close, I'd like to say that at the start, I was rather intimidated by the competition. As schools were rolling in, one school seemed to attract more attention than any other. When Stony Brook entered with their 3-4 teams or so, other people in the ACM hierarchy that overlook the competition had said, and here they are, the Stony Brook team, and had immediately made their way to the coaches and shook each of their hands. Stony Brook is a school I heard a lot about recently and even just yesterday I had went to their website and looked at the courses offered in their CS department. The list was astounding, offering approximately 50 level 300 classes. One of the teachers at Stony Brook, Steven Skiena, even wrote Programming Challenges specifically for a class that is in all respects aimed teaching how to excel in these exact sort of programming competitions. This book was actually outlawed last year on books that were allowed into the testing area, however this year it was not(we had a copy, but did not even think to look at it, and it was most likely not even useful for this anyways). In fact I do plan on receiving my own copy by the New Year. In any event, Stony Brook apparently has earned much respect in this whole aspect of competitive programming, and I think it's fair to say that our out-of-nowhere attack on this event has shown that Rutgers is in fact, if not a quality school, has a few students that are of the highest quality and probably deserve better. In any case though, hopefully next year, if we can put together a determined group, we will be the ones everybody is talking about...were we a bunch of fluke ringers that learned about this wonderful contest too late in our years, or has Rutgers given rise to a new elite class of super-programmers that will only get better and perhaps compete consistently at the World Class level. Today might be remembered as the day that gave rise to Rutgers being respectable not only in CS faculty, but in raw CS and all around problem-solving undergraduate talent.

    Oh yea forgot to mention, I single handedly beat all of Yale university, TCNJ and Columbia/Cornell Team 2.
    Friday, November 12th, 2004
    5:03 pm
    Just a Basic First Entry
    Just to say I exist! Not going to get into the mushy details of my inner self just yet. Cool thing of the day, one of the ACM teams in China called themselves "The Crazy 8088's"
About LiveJournal.com

Advertisement