#include <iostream>
#include<fstream>
#include<math.h>

using namespace std;

int main() 
{
	ifstream fin("input.txt");
	ofstream fout("output.txt");
	long int a,b,q,p,n;
        //1-увеличить количество камней в первой куче в q раз    
        //2-добавить p камней в первую кучу     
        //3-увеличить количество камней во второй куче в q раз    
        //4-добавить p камней во вторую кучу     
	fin>>a>>b>>q>>p>>n;
        int **d = new int*[n+10];
        for (int i=0; i < n+10; i++) 
        {   d[i] = new int [n+10]; 
	    for (int j=0; j< n+10; j++) d[i][j] = 0;
        } 
        //Идем по диагоналям i+j=m
        for (long int m = n; m >= 0; m--) 
           for (int long i = m; i >= 0; i--)
           { long int j = m - i;
             if (i + j + p > n || d[i][j + p] == 0) 
                d[i][j] = 4;
             if (i + j*q > n || d[i][j*q] == 0) 
                d[i][j] = 3;
             if (i+p + j > n || d[i+p][j] == 0) 
                d[i][j] = 2;
             if (i*q + j > n || d[i*q][j] == 0) 
                d[i][j] = 1;
           }
       
       if (a + b > n || d[a][b] !=0)
       { fout << "1 ";
         long int x = a, y = b;
         if (a*q + b > n || d[a*q][b] == 0) x = a*q;
         if (a+p + b > n || d[a+p][b] == 0) 
            if (a+p>x) x = a + p;
         if (a + b*q > n || d[a][b*q] == 0) 
            if (a == x) y = b*q;
         if (a + b + p > n || d[a][b + p] == 0) 
            if (a == x && b+p > y) y = b+p;
         fout <<x<<" "<<y;

       }
       else  fout << "2";
       fin.close();
       fout.close();
    return 0;
}