SRM 701 Div 2 Easy, Medium

https://apps.topcoder.com/wiki/display/tc/SRM+701

Easy

シミュレート

  public class SquareFreeString {
    public String isSquareFree(String s) {
      for (int i = 0; i < s.length(); ++i) {
        for (int j = 2; i + j <= s.length(); j += 2) {
          String left = s.substring(i, i + j / 2);
          String right = s.substring(i + j / 2, i + j);
          if (left.equals(right)) {
            return "not square-free";
          }
        }
      }
      return "square-free";
    }
  }

Medium

ソートして、違ったらカウント

import java.util.*;

  public class SortingSubsets {
    public int getMinimalSize(int[] a) {
      int n = a.length;
      int[] b = new int[n];
      for (int i = 0; i < n; ++i) {
        b[i] = a[i];
      }
      Arrays.sort(b);
      int cnt = 0;
      for (int i = 0; i < n; ++i) {
        if (a[i] != b[i]) {
          ++cnt;
        }
      }
      return cnt;
    }
  }