usaco 3.2 ratios 2008.7.20
2016-02-05 11:22
621 查看
usaco 3.2 ratios 2008.7.20
{
ID:
PROG:ratios
LANG:PASCAL
}
{
ID:
PROG:ratios
LANG:PASCAL
}
program p_radios; const fin='ratios.in';fout='ratios.out'; var x,y,z:array[1..3]of longint; flag,k,a,b,c,i,j,p,n1,n2,n3:longint; f1,f2:text; function max(x1,x2,x3:longint):longint; begin if x1<x2 then max:=x1 else max:=x2; if x3<max then max:=x3; end; function deal(k:longint):longint; var ka,kb,kc:longint; w:array[1..9]of longint; begin ka:=k*a;kb:=k*b;kc:=k*c; if x[1]<>0 then w[1]:=ka div x[1] else w[1]:=200; if y[1]<>0 then w[2]:=kb div y[1] else w[2]:=200; if z[1]<>0 then w[3]:=kc div z[1] else w[3]:=200; if x[2]<>0 then w[4]:=ka div x[2] else w[4]:=200; if y[2]<>0 then w[5]:=kb div y[2] else w[5]:=200; if z[2]<>0 then w[6]:=kc div z[2] else w[6]:=200; if x[3]<>0 then w[7]:=ka div x[3] else w[7]:=200; if y[3]<>0 then w[8]:=kb div y[3] else w[8]:=200; if z[3]<>0 then w[9]:=kc div z[3] else w[9]:=200; n1:=max(w[1],w[2],w[3]); n2:=max(w[4],w[5],w[6]); n3:=max(w[7],w[8],w[9]); if (n1>100)and(n2>100)and(n3>100) then exit(2); for i:=0 to n1 do for j:=0 to n2 do for p:=0 to n3 do if (i*x[1]+j*x[2]+p*x[3]=ka)and (i*y[1]+j*y[2]+p*y[3]=kb) and (i*z[1]+j*z[2]+p*z[3]=kc)then exit(1); end; begin assign(f1,fin);reset(f1);assign(f2,fout);rewrite(f2); read(f1,a,b,c); for i:=1 to 3 do read(f1,x[i],y[i],z[i]); flag:=0;k:=0; repeat inc(k);flag:=deal(k); until flag>0; case flag of 1:writeln(f2,i,' ',j,' ',p,' ',k); 2:writeln(f2,'NONE'); end; close(f1); close(f2); end.
相关文章推荐
- 谈谈 iOS 内存管理机制
- iOS CocoaPods安装和使用图解
- iOS应用开发中图片的拉伸问题解决方案
- iOS 文件路径以及保存
- 高清不加密-小码哥ios大神班视频-小码哥教育
- iOS客户端的APNS服务简介与实现
- iOS 中`联网指示器`的使用
- iOS 应用图标 右上角的数字提示 设置
- iOS 系统状态栏 隐藏 或 显示
- iOS 代码中获取info.plist文件对应的字典对象
- 判断View是否正在显示的总结
- ios 加载xib遇到的坑
- ios8.0下CLLocationManager定位服务需要授权了
- 用CocoaPods做iOS程序的依赖管理
- Xcode插件管理工具Alcatraz
- ios通过ipa快速提取里面的图片资源
- iOS 技能图谱
- iOS-NSNotificationCenter的应用
- IOS开发新手教程(一)-数据类型和运算符
- ios沙盒的应用