// ジャッジの動作確認用 #pragma GCC optimize ( "O3" ) #pragma GCC optimize( "unroll-loops" ) #pragma GCC target ( "sse4.2,fma,avx2,popcnt,lzcnt,bmi2" ) #include using namespace std; #define UNTIE ios_base::sync_with_stdio( false ); cin.tie( nullptr ) #define TYPE_OF( VAR ) decay_t #define CEXPR( LL , BOUND , VALUE ) constexpr LL BOUND = VALUE #define CIN( LL , A ) LL A; cin >> A #define ASSERT( A , MIN , MAX ) assert( MIN <= A && A <= MAX ) #define CIN_ASSERT( A , MIN , MAX ) CIN( TYPE_OF( MAX ) , A ); ASSERT( A , MIN , MAX ) #define QUIT return 0 #define COUT( ANSWER ) cout << ( ANSWER ) << "\n" #define RETURN( ANSWER ) COUT( ANSWER ); QUIT int main() { CEXPR( int , bound , 20 ); CIN_ASSERT( N , - bound , bound ); string answer[bound+1] = { "1000000/10000000" , "-1000000/100000000" , "-90/10000" , "190/100000" , "710/1000000" , "-2610/10000000" , "-4490/100000000" , "30590/1000000000" , "14310/10000000000" , "-320210/100000000000" , "177110/1000000000000" , "3024990/10000000000000" , "-4796090/100000000000000" , "-25453810/1000000000000000" , "73414710/10000000000000000" , "181123390/100000000000000000" , "-915270490/1000000000000000000" , "-895963410/10000000000000000000" , "10048668310/100000000000000000000" , "-1089034210/1000000000000000000000" , "-99397648890/10000000000000000000000" }; RETURN( N > 0 ? "0/10000000000000000000000000000000000000" : answer[-N] ); }