2011/10/15

Topcoder SRM 521 (Div.2) 参戦記


学校の実験が長引いたため、10分ほど遅れての参加になってしまいました。


Easy:簡単だったので208.13点で解くことが出来ました。

Medium:UTPC2011に似たような問題があったように思います。自分のソースのカッコの対応を調べるときの手法をそのまま打ちました。462.62点

Challenge:Mediumにおいて、")("というケースで一つ撃墜しました。もうひとつ撃墜し損なったので、25点です。

695.75,順位は102/1273でした。レートは結構上昇して、907->1004.

[Easy(C++)]

#include<iostream>
#include<string>
using namespace std;

class RedAndGreen{
public:
int minPaints(string row){
char *data=(char *)row.c_str();
int l=strlen(data);
int mins=l;
int i,j,tmp;

for(i=0;i<l;i++){
tmp=0;
for(j=0;j<i;j++) if(data[j]=='G') tmp++;
for(j=i+1;j<l;j++) if(data[j]=='R') tmp++;
if(mins>tmp) mins=tmp;
}
return mins;
}
};


[Medium(C++)]

#include<iostream>
#include<string>


using namespace std;


class MissingParentheses{
public:
int countCorrections(string par){
char *test=(char *)par.c_str();
int ret=0,count=0;
for(int i=0;i<strlen(test);i++){
if(test[i]=='(') count++;
else if(test[i]==')'){
if(count<=0) ret++;
else count--;
}
}
ret+=count;
return ret;
}
};

0 件のコメント:

コメントを投稿