//1G A枚 10G B枚でC円残るように払う //impossibleはA+B<=Cなら出力 //1Gを10払えば10Gが1で返ってくるため、10個のAは1個のBと考えられる #include int main(void){ int A,B,C; std::cin>>A>>B>>C; //要求硬貨枚数の方が多いならImpossible出力 if(A+B<=C){ //※WA原因。10Gで1G~8Gを買えば1~8個硬貨が増えるので考慮する。 if(B>0 && A+B+8>C){ B--; A+=10; } else{ std::cout<<"Impossible"<=10){ //10枚払っても規定硬貨枚数に届きそうなら、10枚払う if(A-10+B+1>C){ A-=10; B++; } else{ break; } } //1円玉だけで払えそうなら、1円玉だけで払う。 if(A+B-C<=A){ std::cout<