using System;
using System.Linq;
using System.Collections.Generic;
namespace Atcoder20190616
{
class ProgramA
{
static void Main(string args)
{
//入力
string input = Console.ReadLine().Split(' ');
string s = input[0];
string t = input[1];
string input2 = Console.ReadLine().Split(' ');
int a = int.Parse(input2[0]);
int b = int.Parse(input2[1]);
string u = Console.ReadLine();
//s=uならA-1で、s=tならB-1で答をだす。
if(s == u)
Console.WriteLine((a -1) + " "+ b);
else
Console.WriteLine(a + " "+ (b-1));
}
}
class ProgramB
{
static void Main(string args)
{
//入力
string input = Console.ReadLine();
//文字数だけxを出す
for(int i = 0;i < input.Length ;i++)
Console.Write("x");
}
}
class ProgramC
{
static void Main(string args)
{
//入力
int n = int.Parse(Console.ReadLine());
long a = new long[n];
string input2 = Console.ReadLine().Split(' ');
for(int i = 0;i < n;i++)
a[i] = long.Parse(input2[i]);
//小さい順にソートする
Array.Sort(a);
//隣同士を比較して同じならNO
for(int i = 0;i < n - 1;i++)
{
if(a[i] == a[i + 1])
{
Console.WriteLine("NO");
return;
}
}
//すべて異なったらYES
Console.WriteLine("YES");
}
}
class ProgramD
{
static void Main(string args)
{
//入力
string input = Console.ReadLine().Split(' ');
int n = int.Parse(input[0]);
int k = int.Parse(input[1]);
double sum = 0.0;
long a = new long[n];
string input2 = Console.ReadLine().Split(' ');
for(int i = 0;i < n;i++)
a[i] = long.Parse(input2[i]);
//まずは和を求める
for(int i = 0; i < k ;i++)
sum += (double)(1.0 + (a[i] - 1) * 0.5);
//答の仮候補
double ans = sum;
//i-kの期待値を引いて、iの期待値を足す
for(int i = k; i < n;i++)
{
sum -= (double)(1.0 + (a[i - k] - 1) * 0.5);//i-kの期待値
sum += (double)(1.0 + (a[i] - 1) * 0.5);//iの期待値
//もし最大なら更新
if(sum > ans)
ans = sum;
}
//答え出力
Console.WriteLine(sum);
}
}
class ProgramE
{
static void Main(string args)
{
//入力
string n = Console.ReadLine();
int k = int.Parse(Console.ReadLine());
int keta = n.Length;//桁数を求める
int sum = 0;
int frag = 0;//最高位以外の0以外の数が出たときの判定に使う
for(int i = 0; i < n.Length; i++)
{
//桁の数代入
int temp = n[i] -'0';
if(k == 1)
{
if(i == 0)
sum += temp;//最高位はその数を代入
else
sum += 9;//それ以外は9個足す
}
else if(k == 2)
{
if(i == 0)
sum = (keta -1) * (temp -1) * 9;//最高位は(桁数-1)×(最高位数-1)×9
else
sum += (keta -1) * 81;//最高位は(桁数-1)×9×9
if(temp != 0 && frag == 1)//2つの目の0以外が出たら
{
sum += temp + (keta -1)* 9;
frag++;
}
if(i == 0)
frag++;
}
else
{
if(i == 0)
sum = (keta -1) * (keta -2) / 2 * (temp - 1) * 9 * 9;//最高位のとき
else
sum += (keta -1) * (keta -2) / 2 * 9*9*9; //それ以外
if(temp != 0 && frag == 2)//3つ目の0じゃない数を出したとき(プログラム的にこの位置にないと破綻する)
{
sum += temp + (keta -1)*9;
frag++;
}
if(temp != 0 && frag == 1)//2つ目の0じゃない数を出したとき
{
sum += (temp -1) * (keta -1) * 9+ (keta -1)*(keta -2) / 2 * 9*9;
frag++;
}
if(i == 0)
frag++;
}
//桁数は毎回減らす
keta--;
}
//答え出力
Console.WriteLine(sum);
}
}
}