#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; void Main() { const int N = 32; vector> ans; for(int i = 0;i < N - 1;i++) { for(int j = i + 1;j < N - 1;j++) { ans.push_back(make_pair(i,j)); } } int K; cin >> K; for(int i = 0;i < 30;i++) { if(K >> i & 1) { ans.push_back(make_pair(i + 1,N - 1)); } } int M = (int)ans.size(); cout << N << " " << M << "\n"; for(int i = 0;i < M;i++) { cout << ans[i].first + 1 << " " << ans[i].second + 1 << "\n"; } } int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int tt = 1; /* cin >> tt; */ while(tt--) Main(); }