解いた問題

5/15/2012

SRM502 Div1 Easy

250

サフィックスになってるものを削除すればいい。



class TheLotteryBothDivs {
public:
  double find(vector <string> s)
  {   
    for (int i = 0; i < (int)s.size(); ++i) {
      reverse(s[i].begin(), s[i].end());
    }
   
    for (int i = 0; i < (int)s.size(); ++i) {
      for (int j = 0; j < (int)s.size(); ++j) {
        if (i == j) continue;
        if (s[i].size() >= s[j].size()) {
          if (s[i].find(s[j]) == 0) {
            s.erase(s.begin() + i--);
            break;
          }
        }
      }
    }

    double sum = 0;
    for (int i = 0; i < (int)s.size(); ++i) {
      sum += pow(0.1, (int)s[i].size());
    }
    printf("%.10lf\n", sum);
    return sum;
  }
};