2014年2月4日火曜日

SRM 606 Div2 Easy/Medum

前回から落ちまくってついに823まで落ちてます。。

SRM 606 Div2 Easy BoundingBox

MaxとMinの組み合わせだったということにパッと気づかなかったのが致命傷

class BoundingBox:
    def smallestArea(self, X, Y):
        return (max(X)-min(X))*(max(Y)-min(Y))

SRM 606 Div2 Medium PalindromicSubstringsDiv2

本番では、他の用事もあり解けず(言い訳)、他の人の回答を見て勉強しましたが、時間があっても解けなかったような気がします。
PythonだとTLEになってしまったが、Javaだとすんなり通った。
  public int count(String[] S1, String[] S2) {
  String string = "";
  for (String s : S1) {
   string += s;
  }
  for (String s : S2) {
   string += s;
  }
  int count = 0;
  for (int i = 0; i < string.length(); i++) {
   for (int j = 1; j < string.length(); j++) {
    if (0 <= i - j && i + j < string.length()
      && string.charAt(i - j) == string.charAt(i + j)) {
     count++;
    } else {
     break;
    }
   }
   for (int j = 0; j < string.length(); j++) {
    if (0 <= i - j && i + j + 1 < string.length()
      && string.charAt(i - j) == string.charAt(i + j + 1)) {
     count++;
    } else {
     break;
    }
   }

  }
  return count+string.length();
 }