250
王様は休暇を取りたい。出来るだけ会合のスケジュールと被らないような日程の休暇スケジュールを組みたい。
できるだけ会合と被らない日程を組んだ時に、やむを得ず被ってしまい変更しなければならない会合スケジュールの数をreturnせよ。
class VacationTime { public: int bestSchedule(int n, int k, vector <int> wD) { int result=INT_MAX,t=0; for(int i=0;i<n-k+1;i++){ t=0; for(int j=0;j<k;j++){ for(int p=0;p<wD.size();p++){ if(i+j==wD[p]-1)t++; } } result=min(result,t); } return result; } };
143.66 Pt(必要の無いRe-submitで70点くらい失う・・・クソっ)
500
ハニカムビーチ!奇数列・偶数列の時でそれぞれ判定条件変えなきゃいけない。
class Islands { public: int beachLength(vector <string> ki) { int r=0; vector<string>kd(1); /*番兵テクニック*/ for(int i=0;i<ki[0].length()+2;i++)kd[0]+="*"; for(int i=0;i<ki.size();i++)kd.push_back("*"+ki[i]+"*"); kd.push_back(kd[0]); for(int i=0;i<kd.size();i++){ for(int x=0;x<kd[i].length();x++){ if(kd[i][x]=='#'){ if(kd[i][x+1]=='.')r++; //右 if(kd[i][x-1]=='.')r++; //左 if(kd[i-1][x]=='.')r++; //上 if(kd[i+1][x]=='.')r++; //下 if(i%2){ if(kd[i-1][x-1]=='.')r++; //左上 if(kd[i+1][x-1]=='.')r++; //左下 }else{ if(kd[i-1][x+1]=='.')r++; //右上 if(kd[i+1][x+1]=='.')r++; //右下 } } } } return r; } };
235.16 Pt
--
計 378.82Pt (452位)
Rate:514→588
初めて500点問題解けたけどレートは相変わらず。
Rate1000までの道のりは長い。