1 条题解
-
0
C :
#include <stdio.h> void main(){ int n,x,y; scanf("%d %d %d",&n,&x,&y); int i,j; int a = 0; for (i=1;i<=n/x;i++){ for(j=1;j<=n/y;j++){ if(i*x+j*y==n){ if(i>=a) a=i; } } } printf("%d %d",a,(n-a*x)/y); }C++ :
#include <iostream> using namespace std; int main(){ int x,y,n,i,m=0; cin>>n>>x>>y; for(i=1;i*x<n;i++){ if((n-i*x)%y==0&&(n-i*x)/y!=0)m=i; } cout<<m<<" "<<(n-m*x)/y<<endl; }Pascal :
var x,a,b,n,i,c:integer; begin readln(x,a,b); n:=x div a; for i:=n downto 1 do begin if((x-a*i) mod b=0) and ((x-a*i) div b>=1) then begin writeln(i,' ',(x-a*i) div b); break; end; end; end.Java :
import java.util.*; public class Main{ public static void main(String[] args) { Scanner in = new Scanner(System.in); int n=in.nextInt(); int x=in.nextInt(); int y=in.nextInt(); w:for(int i=n/x;i>0;i--){ for(int j=1;j<=(n-i*x)/y;j++){ if(i*x+y*j==n&&i!=0&&j!=0){ System.out.println(i+" "+j); break w; } } } } }Python :
n, x, y = map(int, input().split()) j = [] m = [] for i in range(1, n // x + 1): if(n - i * x) > 0 and (n - i * x) % y == 0: l = (n - i * x) // y j.append(i) m.append(l) pass print(max(j), min(m))
- 1
信息
- ID
- 215
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者