OI Progress

SGU 175 — Encoding

Posted on 五月 25th, 2008.

稍微推导一下就可以得到一个递推式(这里直接借用WindyWinter的式子):pos[1,1]=1pos[n,q]=n-k+pos[k,k-q+1] (q<=k)             =pos[n-k,n-q+1] (q>k)
求pos[n, q]即可.
{ SGU 175; Encoding - sqybi’s code}//for my winstyprogram sgu175_sqybi;  var    n, t, q, k: longint;
  begin    readln(n, q);    t := 0;    while n <> 1 do begin      k := n div 2;      if q <= k then begin        t := t + n - k;        n := k;        q […]

Read Full Post | Make a Comment ( 1 so far )

SGU 144 — Meeting

Posted on 五月 25th, 2008.

只说一句:图像法解决概率问题真好用.公式见程序.
{ SGU 144; Meeting - sqybi’s code - Maths}//for my winstyprogram sgu144_sqybi;  var    x, y, z: double;
  begin    readln(x, y, z);    writeln((1-sqr((y-x)*60-z)/sqr((y-x)*60)):0:7);  end.
阅读(122 次)

Read Full Post | Make a Comment ( None so far )

SGU 154 — Factorial

Posted on 五月 25th, 2008.

很简单的二分答案,不过要注意一点,题目所说的自然数不包括0(也就是说,如果输入是0,需要输出1.这里WA了2次).
{ SGU 154; Factorial - sqybi’s code - 二分答案}//for my winstyprogram sgu154_sqybi;  var    n, l, r, mid, i, t, ans: int64;
  begin    readln(n);    ans := 0;    l := 1;    r := n * 5;    while l <= r do begin      mid := (l + r) div 2;      i := 5;      t := 0;      while […]

Read Full Post | Make a Comment ( None so far )

SPOJ 1771 — Yet Another N-Queen Problem (code: NQUEEN)

Posted on 五月 24th, 2008.

n皇后问题,其中n<=50,而且棋盘上有一些部分已经放置皇后.Dancing Links算法搞掉,另外jl大牛似乎用一个改进的DLX算法(貌似是一个十八向的链表…)用极快的速度AC了这道题…另:C++比Pascal快一倍,真TMD无语…
{ SPOJ 1771; Yet Another N-Queen Problem - sqybi’s code - DLX}//for my winstyprogram nqueen_sqybi;  const    nn = 50;    tt = nn * 6 - 2 + nn * nn * 4;
  var    n, i, j, k, temp, tot: longint;    a: array[1..nn]of longint;    col, row, u, d, l, r, size: array[0..tt]of longint;    used: […]

Read Full Post | Make a Comment ( None so far )

SGU 114 — Telecasting station

Posted on 五月 22nd, 2008.

水题.求出中位数即可.
根据WindyWinter的blog,有两点注意.
Pascal注意,读入n对数时,应该用read而不是readln,因为虽然样例数据有换行,但题目中的描述是没有换行的.否则会像我一样WA on 14.
C++注意,iostream会TLE on 12.
{ SGU 114; Telecasting station - sqybi’s code}//for my winstyprogram sgu114_sqybi;  const    nn = 15000;
  type    rec = record      p, v: longint;    end;
  var    s, t, n, i: longint;    a: array[1..nn]of rec;
  procedure qsort(l, r: longint);    var      i, j, d: longint;      t: rec;    begin      if l >= r […]

Read Full Post | Make a Comment ( None so far )

« Previous Entries Next Entries »

Liked it here?
Why not try sites on the blogroll...