#include using namespace std; #define rep(i, n) for(int i = 0; i < n ; i++) #define rep2(i, a, b) for(int i = a; i <= b ; i++) int main(){ int n; cin >> n; int G[n][n] = {}; vector> ans; int m = n-1; rep(i, n){ int cur = m; int cnt = 0; rep(j, n) if(G[i][j]) cnt++; if(cur - cnt <= 0 && cnt >= 1){ m = cnt-1; continue; } rep2(j, i+1, n-1){ if(cur){ G[i][j] = 1; ans.push_back({i+1, j+1}); cur--; } else break; } m--; } rep(i, (int)ans.size()) cout << ans[i].first << " " << ans[i].second << endl; }