#include <iostream>
#include <cmath>
#include <algorithm>
#include <fstream>
#define endl "\n"
#define fi first
#define se second
#define pb push_back
#define mp(x, y) make_pair(x, y)
#define sz(x) (int)x.size()
using namespace std;
typedef long long ll;
typedef pair<ll, ll> pii;
ll n, a, b, c, sum, s;
pii q[200000];
int main()
{
cin >> n >> a >> b;
c = b;
for (int i = 0; i < n; i++) cin >> q[i].fi >> q[i].se;
sort(q, q + n, [](pii a, pii b) { return a.fi - a.second > b.fi - b.se; });
for (int i = 0; i < n; i++)
{
//cout << q[i].fi << " " << q[i].se << endl;
if (b) sum += max(q[i].fi, q[i].se), b--;
else sum += q[i].se;
}
b = c;
if (b == 0) { cout << sum << endl; return 0; }
s = sum;
for (int i = 0; i < n; i++)
{
ll x = q[i].fi * pow(2, a);
//cout << q[i].fi << " " << q[i].se << endl;
//cout << (sum - max(q[c - 1].fi, q[c - 1].se)) + q[c - 1].se - q[i].se + x << endl;
if (b) s = max(s, (sum - max(q[i].fi, q[i].se)) + x), b--;
else s = max(s, (sum - max(q[c - 1].fi, q[c - 1].se)) + q[c - 1].se - q[i].se + x);
}
cout << s << endl;
return 0;
}
1333A - Little Artem | 432D - Prefixes and Suffixes |
486A - Calculating Function | 1373B - 01 Game |
1187A - Stickers and Toys | 313B - Ilya and Queries |
579A - Raising Bacteria | 723A - The New Year Meeting Friends |
302A - Eugeny and Array | 1638B - Odd Swap Sort |
1370C - Number Game | 1206B - Make Product Equal One |
131A - cAPS lOCK | 1635A - Min Or Sum |
474A - Keyboard | 1343A - Candies |
1343C - Alternating Subsequence | 1325A - EhAb AnD gCd |
746A - Compote | 318A - Even Odds |
550B - Preparing Olympiad | 939B - Hamster Farm |
732A - Buy a Shovel | 1220C - Substring Game in the Lesson |
452A - Eevee | 1647B - Madoka and the Elegant Gift |
1408A - Circle Coloring | 766B - Mahmoud and a Triangle |
1618C - Paint the Array | 469A - I Wanna Be the Guy |