usaco 2.1 frac1 2008.5.10
来源:互联网 发布:盗号用什么软件最好 编辑:程序博客网 时间:2024/06/14 02:04
usaco 2.1 frac1 2008.5.10
{
ID:
PROG: frac1
LANG: PASCAL
}
program p_frac1;
const fin='frac1.in';fout='frac1.out';
type
arr1=array[1..8000,1..2]of longint;
arr2=array[1..8000]of real;
var i,j,k,p,w,n:longint;
a:arr1;b:arr2;
f1,f2:text;
procedure qsort(i,j:longint);
var
l,r,g:longint;x,y:real;
begin
l:=i;r:=j;
x:=b[(l+r) div 2];
repeat
while b[l]<x do inc(l);
while b[r]>x do dec(r);
ifl<=r then
begin
y:=b[l];b[l]:=b[r];b[r]:=y;
g:=a[l,1];a[l,1]:=a[r,1];a[r,1]:=g;
g:=a[l,2];a[l,2]:=a[r,2];a[r,2]:=g;
inc(l);dec(r);
end;
until l>r;
if r>i then qsort(i,r);
if l<j then qsort(l,j);
end;
function gcd(a,b:integer):integer;
begin
ifb=0 then gcd:=a
else gcd:=gcd (b,a mod b);
end ;
{------------------------------}
begin
assign(f1,fin);reset(f1);
assign(f2,fout);rewrite(f2);
read(f1,n);
writeln(f2,'0/1');
p:=0;
fori:=2 to n do
begin
inc(p);b[p]:=1/i;a[p,1]:=1;a[p,2]:=i;
for j:=2 to i-1 do
if gcd(i,j)=1 then
begin inc(p);b[p]:=j/i;
a[p,1]:=j;a[p,2]:=i;
end;
end;
qsort(1,p);
for i:=1 to p do
writeln(f2,a[i,1],'/',a[i,2]);
writeln(f2,'1/1');
close(f1);close(f2);
end.
- usaco 2.1 frac1 2008.5.10
- usaco 2.1.2 frac1
- USACO 2.1 frac1
- USACO 2.1 frac1
- USACO 2.1 Ordered Fractions (frac1)
- USACO:frac1
- usaco frac1
- usaco frac1
- usaco——frac1
- USACO frac1直接排序
- 2.1 frac1
- Section 2.1 frac1
- usaco 2.1 sort3 2008.5.20
- usaco 2.1 holstein 2008.5.20
- usaco 2.1 castle 2008.5.30
- usaco 2.1 hamming 2008.6.10
- USACO 2.1
- usaco 2.1
- USACO 1.1 friday
- 【Android】读写文件、判断SD卡是否存在、获取存储路径
- Fedora21下安装VirtualBox及Mac虚拟机
- java泛型类为什么不能声持有类型的静态变量
- wpftoolkit,好多wpf控件,有空可以用用
- usaco 2.1 frac1 2008.5.10
- 论文《FDDB: A Benchmark for Face Detection in Unconstrained Settings》导读
- usaco 2.1 sort3 2008.5.20
- Android ImageView图片自适应
- usaco 2.1 holstein 2008.5.20
- usaco 2.1 castle 2008.5.30
- 关于java list集合的for遍历和Iterator遍历的随想
- 论文《From Facial Parts Responses to Face Detection: A Deep Learning Approach》笔记
- usaco 2.1 hamming 2008.6.10