はじめてのDiv.1でした。
250-Problem:Div.2 Hardと同じ問題でした。特に問題なく提出しましたが、やはり少し難しいように感じました。158.49点でした。
500-Problem:基本的には平均を出力すればよく、1目のサイコロがある場合だけ特別・・・と思っていたのですが、他にも特別な場合があったようです。撃墜されてしまいました。
得点は158.49, 順位は632位. Ratingは1200->1184. まだDiv.1で闘うには実力が足りません。
[Easy(C++),Accepted]
#include<iostream>
#include<vector>
using namespace std;
class MergersDivOne{
public:
double findMaximum(vector <int> revenues){
int i,j;
int tmp,n=revenues.size(),minpl;
double now;
for(i=0;i<n;i++){
minpl=i;
for(j=i+1;j<n;j++) if(revenues[minpl]>revenues[j]) minpl=j;
tmp=revenues[i];
revenues[i]=revenues[minpl];
revenues[minpl]=tmp;
}
now=revenues[0];
for(i=1;i<n;i++){
now+=revenues[i];
now/=2;
}
return now;
}
};
[Medium(C++),Challenged]
#include<iostream>
#include<vector>
using namespace std;
class RollingDiceDivOne{
public:
long long mostLikely(vector <int> dice){
int one_num=0,i,n=dice.size();
long double ave=0;
long long ret;
for(i=0;i<n;i++) one_num+=(dice[i]==1);
if(n-one_num==1) return (long long)n;
for(i=0;i<n;i++) ave+=0.5*(dice[i]+1);
ret=(long long)ave;
return ret;
}
};
0 件のコメント:
コメントを投稿