using System;
using System.Collections.Generic;
using System.Linq;
using static System.Console;
using static System.Math;

class MainClass : Scanner
{
    static void Main()
    {
        var r = ReadLine().Split().Select(int.Parse).ToArray();
        int A = r[0], B = r[1], C = r[2], D = r[3], E = r[4], F = r[5];
        var dp = new (double, double)[F+1];//水　砂糖
        for (int i = 0; i < F+1; i++)
        {
            dp[i] = (-1,0);
        }
        dp[0] = (0, 0);
        for (int i = 0; i < F+1; i++)
        {
            if (dp[i].Item1 != -1)
            {
                var nxt = i + 100 * A;
                if (nxt > F) continue;
                dp[nxt] = (nxt, 0);
            }
        }
        for (int i = 0; i < F + 1; i++)
        {
            if (dp[i].Item1 != -1)
            {
                var nxt = i + 100 * B;
                if (nxt > F) continue;
                dp[nxt] = (nxt, 0);
            }
        }
        for (int i = 0; i < F+1; i++)
        {
            if (dp[i].Item1 != -1)
            {
                var nxt = i + C;
                var (a, b) = dp[i];
                if (nxt > F) continue;
                if ((int)b + C > (int)a / 100 * E) continue;
                if (dp[nxt].Item2 > 0)
                {
                    dp[nxt] = (a, Max(b + C,dp[nxt].Item2));
                }
                else
                {
                    dp[nxt] = (a, b + C);
                }
            }
        }
        for (int i = 0; i < F + 1; i++)
        {
            if (dp[i].Item1 != -1)
            {
                var nxt = i + D;
                var (a, b) = dp[i];
                if (nxt > F) continue;
                if ((int)b + D > (int)a / 100 * E) continue;
                if (dp[nxt].Item2 > 0)
                {
                    dp[nxt] = (a, Max(b + D, dp[nxt].Item2));
                }
                else
                {
                    dp[nxt] = (a, b + D);
                }
            }
        }
        double max = 0;
        var ans = new int[2];
        for (int i = 1; i < F+1; i++)
        {
            if (dp[i].Item1 != -1)
            {
                var (a, b) = dp[i];
                double p = 100 * b / (a + b);
                double lb = 0, ub = 100;
                int cnt = 0;
                while (cnt++<1000)
                {
                    var mid = (lb + ub) / 2;
                    if ((a+b)*mid<100*b) lb = mid;
                    else ub = mid;
                }
                p = ub;
                if (max <= p)
                {
                    ans = new int[2] { (int)(a+b), (int)b };
                    max = p;
                }
            }
        }
        WriteLine(string.Join(" ",ans));
    }
}

class Scanner
{
    public static int RInt() => int.Parse(Console.ReadLine());
    public static long RLong() => long.Parse(Console.ReadLine());
    public static string RString() => Console.ReadLine();
    public static double RDouble() => double.Parse(Console.ReadLine());

    public static int[] RInts() => Array.ConvertAll(Console.ReadLine().Split(), int.Parse);
    public static int[] RInts(Func<string, int> func) => Console.ReadLine().Split().Select(func).ToArray();
    public static long[] RLongs() => Array.ConvertAll(Console.ReadLine().Split(), long.Parse);
    public static long[] RLongs(Func<string, long> func) => Console.ReadLine().Split().Select(func).ToArray();
    public static double[] RDoubles() => Array.ConvertAll(Console.ReadLine().Split(), double.Parse);
    public static double[] RDoubles(Func<string, double> func) => Console.ReadLine().Split().Select(func).ToArray();
    public static string[] RStrings() => Console.ReadLine().Split();
    //public static string[] RStrings(Func<string, string> func) => Console.ReadLine().Split().Select(func).ToArray();
    public static T1 ReadStream<T1>()
    {
        var r = RStrings();
        var r1 = (T1)Convert.ChangeType(r[0], typeof(T1));
        return r1;
    }
    public static (T1, T2) ReadStream<T1, T2>()
    {
        var r = RStrings();
        var r1 = (T1)Convert.ChangeType(r[0], typeof(T1));
        var r2 = (T2)Convert.ChangeType(r[1], typeof(T2));
        return (r1, r2);
    }
    public static (T1, T2, T3) ReadStream<T1, T2, T3>()
    {
        var r = RStrings();
        var r1 = (T1)Convert.ChangeType(r[0], typeof(T1));
        var r2 = (T2)Convert.ChangeType(r[1], typeof(T2));
        var r3 = (T3)Convert.ChangeType(r[2], typeof(T3));
        return (r1, r2, r3);
    }
    public static (T1, T2, T3, T4) ReadStream<T1, T2, T3, T4>()
    {
        var r = RStrings();
        var r1 = (T1)Convert.ChangeType(r[0], typeof(T1));
        var r2 = (T2)Convert.ChangeType(r[1], typeof(T2));
        var r3 = (T3)Convert.ChangeType(r[0], typeof(T3));
        var r4 = (T4)Convert.ChangeType(r[0], typeof(T4));
        return (r1, r2, r3, r4);
    }
}

Measured memory_bytes: 28072