Exemplo n.º 1
0
 public void setStatusResult(Result res, String time, String Memory) {
   result = res;
   TimeUsed = time;
   MemoryUsed = Memory;
   if (cid != -1) {
     Contest c = ContestMain.getContest(cid);
     c.getRank().add(Main.status.getStatu(rid), c); // 通知更新排行榜
   }
 }
  public ArrayList<Contest> parse() {
    ArrayList<Contest> contests = new ArrayList<>();
    String s = Utils.URLToString(contestsPage(), "UTF-8");
    if (s == null) return null;

    try {
      int i = s.indexOf("\"champ\""), p, k, b;
      String t;
      i = s.indexOf("\"name\"", i);
      i = s.indexOf(':', i);
      i = s.indexOf('\"', i);
      String name = s.substring(i + 1, s.indexOf('\"', i + 1));
      i = s.indexOf("\"rounds\"");
      for (; ; ) {
        i = s.indexOf("\"name\"", i + 1);
        if (i == -1) break;
        b = s.lastIndexOf('{', i);
        k = s.indexOf(':', i);
        k = s.indexOf('\"', k);
        Contest c = new Contest();
        String z = s.substring(k + 1, s.indexOf('\"', k + 1));
        c.title = name + " " + z;
        k = s.indexOf("\"start_date\"", b);
        k = s.indexOf(':', k);
        k = s.indexOf('\"', k);
        t = s.substring(k + 1, s.indexOf('\"', k + 1));
        p = t.indexOf('T');
        t = t.substring(0, p) + " " + t.substring(p + 1, p + 9) + " GMT" + t.substring(p + 9);
        try {
          c.startDate.setTime(dateFormat.parse(t));
        } catch (ParseException e) {
          e.printStackTrace();
        }
        k = s.indexOf("\"end_date\"", b);
        k = s.indexOf(':', k);
        k = s.indexOf('\"', k);
        t = s.substring(k + 1, s.indexOf('\"', k + 1));
        p = t.indexOf('T');
        t = t.substring(0, p) + " " + t.substring(p + 1, p + 9) + " GMT" + t.substring(p + 9);
        try {
          c.endDate.setTime(dateFormat.parse(t));
        } catch (ParseException e) {
          e.printStackTrace();
        }
        c.mainPage = mainPage();
        c.deadLine = Utils.timeConsts.YEAR;
        c.icon = getIcon();
        contests.add(c);
      }
    } catch (Exception e) {
      e.printStackTrace();
    }

    return contests;
  }
Exemplo n.º 3
0
  public ArrayList<Contest> parse() {
    ArrayList<Contest> contests = new ArrayList<Contest>();
    String s = Utils.URLToString(contestsPage(), "UTF-8");
    if (s == null) return null;

    try {
      int i, j, k = s.indexOf("h3");
      String str, sp[];
      k = s.indexOf("center", k);
      j = s.indexOf("</b>", k);
      i = s.lastIndexOf("/>", j);
      str = Utils.trim(s.substring(i + 2, j));
      str = Utils.trimTags(str);
      sp = str.split(" ");
      Contest c = new Contest();
      c.title = "1/4 ACM ICPC";
      try {
        c.startDate.setTime(
            dateFormat.parse(
                sp[1] + " " + Utils.month.get(sp[4]) + " " + sp[5] + " 00 00 00 KRAT"));
        c.endDate.setTime(
            dateFormat.parse(
                sp[3] + " " + Utils.month.get(sp[4]) + " " + sp[5] + " 23 59 59 KRAT"));
      } catch (ParseException e) {
        e.printStackTrace();
        return null;
      }
      c.deadLine = Utils.timeConsts.YEAR;
      c.mainPage = mainPage();
      c.contestPage = contestsPage();
      c.icon = getIcon();
      contests.add(c);
    } catch (Exception e) {
      e.printStackTrace();
    }
    return contests;
  }