전체 글 230

[Topcoder] SRM417

어제 밤 12시에 있었던 매치.. 전날 PM작업하고, 내일은 또 지방내려가야 되서 피곤했다. 참가하지 말까 하다가, 그냥 TV보다 눈좀 붙이고.. 일어나서 참가했다;; 자고 일어나서 컴터키니 시작 30초 전이더라.. 1번문제는 그냥 문안한 문제 같아서 풀었는데.. 나중에 보니 Challenge당했다;; stringstream으로 string을 int로 변환하면 알아서 0은 없애주는데..쓸데없이 0을 빼줄려고 조건문 넣다가 망했다; 2번문제는 문제파악하는데 40분이상 걸림.. 가능한 substring중에 사전적으로 먼저오는 단어를 리턴하라는 구문을 주의깊게 보지않은게 패인.. 다른 예제들은 이해가 되던데.. 아래 3번예제가 왜 "pi"가 아니고, "ippi"일까를 무쟈게 고민했었다.. 결국, 문제파악을 하..

[Topcoder] SRM232 ~ 239 연습

SRM232 DIV2 : 이문제도 예전에 나왔던 동일한 문제.. 확실히 한번 본 문제는 빨리푼다.. 연습하는 보람이 있군; class BritishCoins { public: vector coins(int p) { VI ret; ret.pb(p/240); p = p%240; ret.pb(p/12); ret.pb(p%12); return ret; } }; SRM233 DIV2 class JustifyText { public: vector format(vector t) { int n = t.size(); int m = 0; REP(i, n) m = max(m, (int)t[i].size()); REP(i, n) { while(t[i].size() != m) t[i] = ' ' + t[i]; } return ..

Problem Solving 2008.09.11

[Topcoder] SRM223 ~ 231 연습

SRM223 DIV2 class MostProfitable { public: string bestItem(vector c, vector p, vector s, vector items) { string ret; int m = 0; REP(i, c.size()) { if( m < (p[i] - c[i]) * s[i]) { m = (p[i] - c[i]) * s[i]; ret = items[i]; } } return ret; } }; SRM224 DIV2 : 문제에 char가 짝수개라고 제시되어 있는 걸 봤다면 홀수개일때 고민이 필요없었을 문제.. class InsideOut { public: string unscramble(string l) { string ret; int n = l.size(); int h..

Problem Solving 2008.09.10

[Topcoder] SRM416

어제 저녁 8시에 있었던 매치.. 1번은 그럭저럭 풀었고, 2번문제로 고심하다가 마감 5분인가 남기고 제출했다. 그런데, 쉬는 시간에 2번문제를 949209942라는 좀 큰수로 테스트해보니, 실패로 나왔다;; 그렇게 Challenge Time이 왔는데, 내가 실패한 경우에 대해 다른 사람들을 challenge해봤다. 그런데, 이게 왠일인가.. challenge하는 족족이 떨어져 나가는 것이 아닌가..ㅎㅎ; 대충 소스보고, 소스가 지나치게 길거나, 난잡하면 무조건 challenge했다. 성공률이 워낙 잘나와서, 2번문제를 모든사람 다 challenge해봤더니 8명 성공, 3명 실패..ㅎㅎ 3명은 나중에 system test에서도 통과한 사람들.. 내가 우연히 테스트한 숫자가 잘 먹혀들어간거 같다.. 운이 ..

[Topcoder] SRM173 ~ 180연습

SRM173 DIV2 : 코딩속도를 높이기 위해서 REP 를 define하고 쓰는 연습을 해봤다. #define REP(I,N) for(int I=0;I 32 || abs(rgb[2] - b) > 32 ) { ret.pb(r); ret.pb(g); ret.pb(b); } else { REP(i,3) { if(rgb[i] - 128 >= 0) ret.pb(rgb[i] - 128); else ret.pb( rgb[i]+128 ); } } return ret; } }; SRM177 DIV2 : 다른사람들 경우 이중 for문을 돌렸으나, 나는 o(n)이니 좀더 나은건가..ㅎㅎ; class Stairs { public: int designs(int m1, int m2, int h, int w) { int ret ..

Problem Solving 2008.09.04

[Topcoder] SRM165 ~ 172연습

SRM165 DIV2 : 쉬운 문제.. class BritishCoins { public: vector coins(int pence) { vector ret; int pound = pence / 240; int s = (pence - pound*240) / 12; int p = pence % 12; ret.pb(pound); ret.pb(s); ret.pb(p); return ret; } }; SRM166 DIV2 : easy문제치고는 괜찮은 문제인듯. i, j, k에 대해 p[i] + p[j] > p[k]만 비교하면 되는데, 3가지 다 계산을 해줬다. 좀더 short code로 짤 수 있도록 사고의 연습이 필요함. class Workshop { public: int pictureFrames(vector..

Problem Solving 2008.09.03
반응형