/* -*- coding: utf-8 -*- * * 745.cc: No.745 letinopia raoha - yukicoder */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; /* constant */ /* typedef */ /* global variables */ /* subroutines */ inline int esum(int n) { return (1 << n) - 1; } /* main */ int main() { int a, b, c, d; scanf("%d%d%d%d", &a, &b, &c, &d); if (d >= 10) { puts("Impossible"); return 0; } int k = b / 100; b %= 100; int sum = esum(k) * 100 * 50; int ar = min(100 - b, a); sum += (1 << k) * (b * 50 + ar * 100); k++; a -= ar; int m = a / 100 + k; a %= 100; sum += (esum(m) - esum(k)) * 100 * 100; sum += (1 << m) * a * 100; m++; printf("Possible\n%d\n", sum); return 0; }