func_code_string: #include <bits/stdc++.h>   #pragma GCC optimize( O3 )   using namespace std;   int n;   struct vec {     long long x, y, idx;   } a, b;   long double pos_ang_with_x_axis(vec a) {     long double res = atan2(a.y, a.x) * 180 / acos(-1);     if (res < 0) res += 360;     return res;   }   int dot(vec a, vec b) { return a.x * b.x + a.y * b.y; }   long double norm(vec a) { return (long double)sqrt(a.x * a.x + a.y * a.y); }   long double angle(vec a, vec b) {     long double ang1 = pos_ang_with_x_axis(a);     long double ang2 = pos_ang_with_x_axis(b);     return fabs(ang1 - ang2);   }   vector<vec> v;   bool cmp(vec a, vec b) {     vec c;     c.x = c.y = 0;     long double ang1 = pos_ang_with_x_axis(a);     long double ang2 = pos_ang_with_x_axis(b);     return ang1 < ang2;   }   int main() {     ios::sync_with_stdio(0);     cin >> n;     for (int i = 0; i < n; i++) {       cin >> a.x >> a.y;       a.idx = i + 1;       v.push_back(a);     }     sort(v.begin(), v.end(), cmp);     int idx1, idx2;     long double mn = 1e18;     v.push_back(v[0]);     for (int i = 1; i <= n; i++) {       long double d = angle(v[i], v[i - 1]);       d = min(d, (long double)360 - d);       if (d < mn) mn = d, idx1 = v[i - 1].idx, idx2 = v[i].idx;     }     cout << idx1 <<     << idx2 << endl;     return 0;   }   