#include <iostream>
using namespace std;
#define MAXN 100
#define LINE 2
int factory[LINE][MAXN][LINE]; //记录流水线上每个工作站的装配时间和转换至另一条流水线的开销
int cost[LINE][MAXN]; //记录开销动态规划时的最优子问题
int record[LINE][MAXN]; //记录选择的流水线
int main()
{
int n, e1, e2;
cin >> n;
cin >> e1 >> e2;;
cout << "please the cost of each station, i set as station line,j as station num" << endl;
if(0 == n)
return 0;
for(int i = 0; i < LINE; i++){
cout << "please input line:" << i << "\n";
for(int j = 0; j < n; j++){
cin >> factory[i][j][0]; //make cost
cin >> factory[i][j][1]; //line change cost
}
}
for(int i = 0; i < LINE; i++){
for(int j = 0; j < n; j++)
cout << "(local cost:" << factory[i][j][0] << " and change cost:" << factory[i][j][1] << ")\n";
cout << "\n";
}
cost[0][0] = factory[0][0][0] + e1;
cost[1][0] = factory[1][0][0] + e2;
record[0][0] = 0;
record[1][0] = 1;
for(int i = 1; i < n ; i++){
if(cost[0][i - 1] <= cost[1][i - 1] + factory[1][i - 1][1]){
cost[0][i] = cost[0][i - 1] + factory[0][i][0];
record[0][i] = 0;
}else{
cost[0][i] = cost[1][i - 1] + factory[0][i][0] + factory[1][i - 1][1];
record[0][i] = 1;
}
if(cost[1][i - 1] <= cost[0][i - 1] + factory[0][i - 1][1]){
cost[1][i] = cost[1][i - 1] + factory[1][i][0];
record[1][i] = 1;
}else{
cost[1][i] = cost[0][i - 1] + factory[1][i][0] + factory[0][i - 1][1];
record[1][i] = 0;
}
}
int line = (cost[0][n - 1] + factory[0][n - 1][1] <= cost[1][n - 1] + factory[1][n-1][1]) ? 0 : 1;
for(int i = n - 1; i >= 0; i--){
cout << "in line "<< line << "station " << i << "\n";
line = record[line][i];
}
return 0;
}