#include <iostream> 
 
 
unsigned  long  long  getClosestWith7( unsigned  long  long  n, unsigned  int  k) 
{ 
    // Count number of digits 
    unsigned  long  long  tmp =  n; 
    unsigned  int  m =  0 , mK =  0 ; 
    while ( tmp >  0 ) 
    { 
        if ( tmp %  10  ==  7 )  mK++ ; 
        tmp / =  10 ; 
        m++ ; 
    } 
 
    // Distinct cases 
    if ( k ==  mK &&  n ! =  0 ) 
        return  n; 
    else  if ( k >=  m ||  n ==  0 )  // implicit: k != mK 
    { 
        unsigned  long  long  r =  0 ; 
        while ( k >  0 ) 
        { 
            r =  10  *  r +  7 ; 
            k-- ; 
        } 
        return  r; 
    } 
    else  if ( k >  mK)  // implicit: k != mK, k < m 
    { 
        unsigned  long  long  r =  n; 
        unsigned  long  long  s =  0 ; 
        m =  0 ; 
        while ( mK <  k) 
        { 
            if ( r %  10  ! =  7 )  mK++ ; 
            r / =  10 ; 
            m++ ; 
        } 
        if ( r %  10  ==  8 )  // special case 
            s =  79  +  100  *  ( r /  10 ) ; 
        while ( m >  0 ) 
        { 
            r =  10  *  r +  7 ; 
            if ( s ! =  0  &&  m >  1 )  // special case 
                s =  10  *  s +  7 ; 
            m-- ; 
        } 
        return  ( r <  n &&  n -  r <  n -  s)  ||  ( r >=  n &&  r -  n <  n -  s)  ?  r :  s; 
    } 
    else  // implicit : k < mK 
    { 
        // Generate a and b 
        unsigned  long  long  a =  n; 
        unsigned  long  long  b =  0 ; 
        m =  0 ; 
        while ( mK >  k) 
        { 
            if ( a %  10  ==  7 )  mK-- ; 
            a / =  10 ; 
            m++ ; 
        } 
        b =  10  *  a +  8 ; 
        a =  10  *  a +  6 ; 
        m-- ; 
        while ( m >  0 ) 
        { 
            a =  10  *  a +  9 ; 
            b =  10  *  b +  0 ; 
            m-- ; 
        } 
 
        // Compare (return lowest if equal) 
        return  n -  a <=  b -  n ?  a :  b; 
    } 
} 
 
#define CLOSEST7( N , K ) \ 
    std::cout << "N = " << N << ", K = " << K << " => N' = " << getClosestWith7(N,K) << "\n" 
 
int  main( ) 
{ 
    CLOSEST7( 1773 ,3 ) ; 
    CLOSEST7( 83 ,1 ) ; 
    CLOSEST7( 17273 ,3 ) ; 
    CLOSEST7( 1273679750 ,6 ) ; 
    CLOSEST7( 1773 ,1 ) ; 
    CLOSEST7( 83 ,5 ) ; 
    CLOSEST7( 0 ,2 ) ; 
    CLOSEST7( 0 ,0 ) ; 
} 
I2luY2x1ZGUgPGlvc3RyZWFtPgoKCnVuc2lnbmVkIGxvbmcgbG9uZyBnZXRDbG9zZXN0V2l0aDcodW5zaWduZWQgbG9uZyBsb25nIG4sIHVuc2lnbmVkIGludCBrKQp7CiAgICAvLyBDb3VudCBudW1iZXIgb2YgZGlnaXRzCiAgICB1bnNpZ25lZCBsb25nIGxvbmcgdG1wID0gbjsKICAgIHVuc2lnbmVkIGludCBtID0gMCwgbUsgPSAwOwogICAgd2hpbGUodG1wID4gMCkKICAgIHsKICAgICAgICBpZih0bXAgJSAxMCA9PSA3KSBtSysrOwogICAgICAgIHRtcCAvPSAxMDsKICAgICAgICBtKys7CiAgICB9CiAgICAKICAgIC8vIERpc3RpbmN0IGNhc2VzCiAgICBpZihrID09IG1LICYmIG4gIT0gMCkKICAgICAgICByZXR1cm4gbjsKICAgIGVsc2UgaWYoayA+PSBtIHx8IG4gPT0gMCkgLy8gaW1wbGljaXQ6IGsgIT0gbUsKICAgIHsKICAgICAgICB1bnNpZ25lZCBsb25nIGxvbmcgciA9IDA7CiAgICAgICAgd2hpbGUoayA+IDApCiAgICAgICAgewogICAgICAgICAgICByID0gMTAgKiByICsgNzsKICAgICAgICAgICAgay0tOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcjsKICAgIH0KICAgIGVsc2UgaWYoayA+IG1LKSAvLyBpbXBsaWNpdDogayAhPSBtSywgayA8IG0KICAgIHsKICAgICAgICB1bnNpZ25lZCBsb25nIGxvbmcgciA9IG47CiAgICAgICAgdW5zaWduZWQgbG9uZyBsb25nIHMgPSAwOwogICAgICAgIG0gPSAwOwogICAgICAgIHdoaWxlKG1LIDwgaykKICAgICAgICB7CiAgICAgICAgICAgIGlmKHIgJSAxMCAhPSA3KSBtSysrOwogICAgICAgICAgICByIC89IDEwOwogICAgICAgICAgICBtKys7CiAgICAgICAgfQogICAgICAgIGlmKHIgJSAxMCA9PSA4KSAvLyBzcGVjaWFsIGNhc2UKICAgICAgICAgICAgcyA9IDc5ICsgMTAwICogKHIgLyAxMCk7CiAgICAgICAgd2hpbGUobSA+IDApCiAgICAgICAgewogICAgICAgICAgICByID0gMTAgKiByICsgNzsKICAgICAgICAgICAgaWYocyAhPSAwICYmIG0gPiAxKSAvLyBzcGVjaWFsIGNhc2UKICAgICAgICAgICAgICAgIHMgPSAxMCAqIHMgKyA3OwogICAgICAgICAgICBtLS07CiAgICAgICAgfQogICAgICAgIHJldHVybiAociA8IG4gJiYgbiAtIHIgPCBuIC0gcykgfHwgKHIgPj0gbiAmJiByIC0gbiA8IG4gLSBzKSA/IHIgOiBzOwogICAgfQogICAgZWxzZSAvLyBpbXBsaWNpdCA6IGsgPCBtSwogICAgewogICAgICAgIC8vIEdlbmVyYXRlIGEgYW5kIGIKICAgICAgICB1bnNpZ25lZCBsb25nIGxvbmcgYSA9IG47CiAgICAgICAgdW5zaWduZWQgbG9uZyBsb25nIGIgPSAwOwogICAgICAgIG0gPSAwOwogICAgICAgIHdoaWxlKG1LID4gaykKICAgICAgICB7CiAgICAgICAgICAgIGlmKGEgJSAxMCA9PSA3KSBtSy0tOwogICAgICAgICAgICBhIC89IDEwOwogICAgICAgICAgICBtKys7CiAgICAgICAgfQogICAgICAgIGIgPSAxMCAqIGEgKyA4OwogICAgICAgIGEgPSAxMCAqIGEgKyA2OwogICAgICAgIG0tLTsKICAgICAgICB3aGlsZShtID4gMCkKICAgICAgICB7CiAgICAgICAgICAgIGEgPSAxMCAqIGEgKyA5OwogICAgICAgICAgICBiID0gMTAgKiBiICsgMDsKICAgICAgICAgICAgbS0tOwogICAgICAgIH0KCiAgICAgICAgLy8gQ29tcGFyZSAocmV0dXJuIGxvd2VzdCBpZiBlcXVhbCkKICAgICAgICByZXR1cm4gbiAtIGEgPD0gYiAtIG4gPyBhIDogYjsKICAgIH0KfQoKI2RlZmluZSBDTE9TRVNUNyggTiAsIEsgKSBcCiAgICBzdGQ6OmNvdXQgPDwgIk4gPSAiIDw8IE4gPDwgIiwgSyA9ICIgPDwgSyA8PCAiID0+IE4nID0gIiA8PCBnZXRDbG9zZXN0V2l0aDcoTixLKSA8PCAiXG4iCiAgICAKaW50IG1haW4oKQp7CiAgICBDTE9TRVNUNygxNzczLDMpOwogICAgQ0xPU0VTVDcoODMsMSk7CiAgICBDTE9TRVNUNygxNzI3MywzKTsKICAgIENMT1NFU1Q3KDEyNzM2Nzk3NTAsNik7CiAgICBDTE9TRVNUNygxNzczLDEpOwogICAgQ0xPU0VTVDcoODMsNSk7CiAgICBDTE9TRVNUNygwLDIpOwogICAgQ0xPU0VTVDcoMCwwKTsKfQ==
				
				 
			
				
			
			
				
	
		
		
		
		 
	
		N = 1773, K = 3 => N' = 1777
N = 83, K = 1 => N' = 79
N = 17273, K = 3 => N' = 17277
N = 1273679750, K = 6 => N' = 1273677777
N = 1773, K = 1 => N' = 1769
N = 83, K = 5 => N' = 77777
N = 0, K = 2 => N' = 77
N = 0, K = 0 => N' = 0