naan.cpp:46:23: error: multiple types in one declaration
typedef long long int __int128;
^~~~~~~~
naan.cpp:46:23: error: declaration does not declare anything [-fpermissive]
naan.cpp:50:14: error: 'LLI' was not declared in this scope
typedef pair<LLI,LLI> plli;
^~~
naan.cpp:50:14: note: suggested alternative: 'ULLI'
typedef pair<LLI,LLI> plli;
^~~
ULLI
naan.cpp:50:18: error: 'LLI' was not declared in this scope
typedef pair<LLI,LLI> plli;
^~~
naan.cpp:50:18: note: suggested alternative: 'ULLI'
typedef pair<LLI,LLI> plli;
^~~
ULLI
naan.cpp:50:21: error: template argument 1 is invalid
typedef pair<LLI,LLI> plli;
^
naan.cpp:50:21: error: template argument 2 is invalid
naan.cpp:52:16: error: 'LLI' was not declared in this scope
typedef vector<LLI> vlli;
^~~
naan.cpp:52:16: note: suggested alternative: 'ULLI'
typedef vector<LLI> vlli;
^~~
ULLI
naan.cpp:52:19: error: template argument 1 is invalid
typedef vector<LLI> vlli;
^
naan.cpp:52:19: error: template argument 2 is invalid
naan.cpp:59:1: error: 'LLI' does not name a type; did you mean 'ULLI'?
LLI gcd(LLI a,LLI b) {
^~~
ULLI
naan.cpp:65:5: error: 'LLI' does not name a type; did you mean 'ULLI'?
LLI n,d;
^~~
ULLI
naan.cpp: In member function 'frac frac::reduce()':
naan.cpp:67:9: error: 'LLI' was not declared in this scope
LLI g = gcd(n,d);
^~~
naan.cpp:67:9: note: suggested alternative: 'ULLI'
LLI g = gcd(n,d);
^~~
ULLI
naan.cpp:68:9: error: 'n' was not declared in this scope
n /= g,d /= g;
^
naan.cpp:68:14: error: 'g' was not declared in this scope
n /= g,d /= g;
^
naan.cpp:68:16: error: 'd' was not declared in this scope
n /= g,d /= g;
^
naan.cpp: In member function 'frac frac::operator+(frac)':
naan.cpp:72:24: error: 'n' was not declared in this scope
return ((frac){n*f.d+d*f.n,d*f.d}).reduce();
^
naan.cpp:72:28: error: 'struct frac' has no member named 'd'
return ((frac){n*f.d+d*f.n,d*f.d}).reduce();
^
naan.cpp:72:30: error: 'd' was not declared in this scope
return ((frac){n*f.d+d*f.n,d*f.d}).reduce();
^
naan.cpp:72:34: error: 'struct frac' has no member named 'n'
return ((frac){n*f.d+d*f.n,d*f.d}).reduce();
^
naan.cpp:72:40: error: 'struct frac' has no member named 'd'
return ((frac){n*f.d+d*f.n,d*f.d}).reduce();
^
naan.cpp: In member function 'frac frac::operator-(frac)':
naan.cpp:75:24: error: 'n' was not declared in this scope
return ((frac){n*f.d-d*f.n,d*f.d}).reduce();
^
naan.cpp:75:28: error: 'struct frac' has no member named 'd'
return ((frac){n*f.d-d*f.n,d*f.d}).reduce();
^
naan.cpp:75:30: error: 'd' was not declared in this scope
return ((frac){n*f.d-d*f.n,d*f.d}).reduce();
^
naan.cpp:75:34: error: 'struct frac' has no member named 'n'
return ((frac){n*f.d-d*f.n,d*f.d}).reduce();
^
naan.cpp:75:40: error: 'struct frac' has no member named 'd'
return ((frac){n*f.d-d*f.n,d*f.d}).reduce();
^
naan.cpp: In member function 'frac frac::operator*(frac)':
naan.cpp:78:24: error: 'n' was not declared in this scope
return ((frac){n*f.n,d*f.d}).reduce();
^
naan.cpp:78:28: error: 'struct frac' has no member named 'n'
return ((frac){n*f.n,d*f.d}).reduce();
^
naan.cpp:78:30: error: 'd' was not declared in this scope
return ((frac){n*f.n,d*f.d}).reduce();
^
naan.cpp:78:34: error: 'struct frac' has no member named 'd'
return ((frac){n*f.n,d*f.d}).reduce();
^
naan.cpp: In member function 'bool frac::operator<(frac)':
naan.cpp:81:30: error: 'n' was not declared in this scope
return (long double) n/d < (long double) f.n/f.d;
^
naan.cpp:81:32: error: 'd' was not declared in this scope
return (long double) n/d < (long double) f.n/f.d;
^
naan.cpp:81:52: error: 'struct frac' has no member named 'n'
return (long double) n/d < (long double) f.n/f.d;
^
naan.cpp:81:56: error: 'struct frac' has no member named 'd'
return (long double) n/d < (long double) f.n/f.d;
^
naan.cpp: At global scope:
naan.cpp:85:1: error: 'LLI' does not name a type; did you mean 'ULLI'?
LLI sum[2000][2001];
^~~
ULLI
naan.cpp: In function 'frac query(int, frac, frac)':
naan.cpp:88:26: error: too many initializers for 'frac'
frac ans = (frac){0,1};
^
naan.cpp:89:24: error: 'sum' was not declared in this scope
ans = ans + (frac){sum[i][b.n/b.d],1};
^~~
naan.cpp:89:33: error: 'struct frac' has no member named 'n'
ans = ans + (frac){sum[i][b.n/b.d],1};
^
naan.cpp:89:37: error: 'struct frac' has no member named 'd'
ans = ans + (frac){sum[i][b.n/b.d],1};
^
naan.cpp:90:12: error: 'struct frac' has no member named 'n'
if ((b.n % b.d) != 0) ans = ans + (frac){V[i][b.n/b.d]*(b.n % b.d),b.d};
^
naan.cpp:90:18: error: 'struct frac' has no member named 'd'
if ((b.n % b.d) != 0) ans = ans + (frac){V[i][b.n/b.d]*(b.n % b.d),b.d};
^
naan.cpp:90:53: error: 'struct frac' has no member named 'n'
if ((b.n % b.d) != 0) ans = ans + (frac){V[i][b.n/b.d]*(b.n % b.d),b.d};
^
naan.cpp:90:57: error: 'struct frac' has no member named 'd'
if ((b.n % b.d) != 0) ans = ans + (frac){V[i][b.n/b.d]*(b.n % b.d),b.d};
^
naan.cpp:90:63: error: 'struct frac' has no member named 'n'
if ((b.n % b.d) != 0) ans = ans + (frac){V[i][b.n/b.d]*(b.n % b.d),b.d};
^
naan.cpp:90:69: error: 'struct frac' has no member named 'd'
if ((b.n % b.d) != 0) ans = ans + (frac){V[i][b.n/b.d]*(b.n % b.d),b.d};
^
naan.cpp:90:74: error: 'struct frac' has no member named 'd'
if ((b.n % b.d) != 0) ans = ans + (frac){V[i][b.n/b.d]*(b.n % b.d),b.d};
^
naan.cpp:91:33: error: 'struct frac' has no member named 'n'
ans = ans - (frac){sum[i][a.n/a.d],1};
^
naan.cpp:91:37: error: 'struct frac' has no member named 'd'
ans = ans - (frac){sum[i][a.n/a.d],1};
^
naan.cpp:92:12: error: 'struct frac' has no member named 'n'
if ((a.n % a.d) != 0) ans = ans - (frac){V[i][a.n/a.d]*(a.n % a.d),a.d};
^
naan.cpp:92:18: error: 'struct frac' has no member named 'd'
if ((a.n % a.d) != 0) ans = ans - (frac){V[i][a.n/a.d]*(a.n % a.d),a.d};
^
naan.cpp:92:53: error: 'struct frac' has no member named 'n'
if ((a.n % a.d) != 0) ans = ans - (frac){V[i][a.n/a.d]*(a.n % a.d),a.d};
^
naan.cpp:92:57: error: 'struct frac' has no member named 'd'
if ((a.n % a.d) != 0) ans = ans - (frac){V[i][a.n/a.d]*(a.n % a.d),a.d};
^
naan.cpp:92:63: error: 'struct frac' has no member named 'n'
if ((a.n % a.d) != 0) ans = ans - (frac){V[i][a.n/a.d]*(a.n % a.d),a.d};
^
naan.cpp:92:69: error: 'struct frac' has no member named 'd'
if ((a.n % a.d) != 0) ans = ans - (frac){V[i][a.n/a.d]*(a.n % a.d),a.d};
^
naan.cpp:92:74: error: 'struct frac' has no member named 'd'
if ((a.n % a.d) != 0) ans = ans - (frac){V[i][a.n/a.d]*(a.n % a.d),a.d};
^
naan.cpp: In function 'int main()':
naan.cpp:102:13: error: 'sum' was not declared in this scope
sum[i][j+1] = sum[i][j]+V[i][j];
^~~
naan.cpp:104:26: error: 'sum' was not declared in this scope
need[i] = (frac){sum[i][L],N};
^~~
naan.cpp:107:24: error: too many initializers for 'frac'
frac p = (frac){0,1};
^
naan.cpp:109:33: error: too many initializers for 'frac'
frac best = (frac){L+1,1};
^
naan.cpp:113:27: error: 'struct frac' has no member named 'n'
int l = p.n/p.d,r = L;
^
naan.cpp:113:31: error: 'struct frac' has no member named 'd'
int l = p.n/p.d,r = L;
^
naan.cpp:114:28: error: 'r' was not declared in this scope
while (l < r) {
^
naan.cpp:116:45: error: too many initializers for 'frac'
if (query(j,p,(frac){m,1}) < need[j]) l = m+1;
^
naan.cpp:120:46: error: too many initializers for 'frac'
frac f = query(j,p,(frac){l,1});
^
naan.cpp:123:43: error: too many initializers for 'frac'
f = f * (frac){1,V[j][l-1]};
^
naan.cpp:125:37: error: too many initializers for 'frac'
frac q = ((frac){l,1})-f;
^
naan.cpp:131:15: error: 'struct frac' has no member named 'd'
if (p.d > 1e9) {
^
naan.cpp:132:15: error: 'struct frac' has no member named 'n'
p.n = ((long double) p.n*1e9+p.d-1)/p.d;
^
naan.cpp:132:36: error: 'struct frac' has no member named 'n'
p.n = ((long double) p.n*1e9+p.d-1)/p.d;
^
naan.cpp:132:44: error: 'struct frac' has no member named 'd'
p.n = ((long double) p.n*1e9+p.d-1)/p.d;
^
naan.cpp:132:51: error: 'struct frac' has no member named 'd'
p.n = ((long double) p.n*1e9+p.d-1)/p.d;
^
naan.cpp:133:15: error: 'struct frac' has no member named 'd'
p.d = 1e9,p.reduce();
^
naan.cpp:135:61: error: 'struct frac' has no member named 'n'
if (i < N-1) printf("%lld %lld\n",(long long int) p.n,(long long int) p.d);
^
naan.cpp:135:81: error: 'struct frac' has no member named 'd'
if (i < N-1) printf("%lld %lld\n",(long long int) p.n,(long long int) p.d);
^
naan.cpp:98:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
scanf("%d %d",&N,&L);
~~~~~^~~~~~~~~~~~~~~
naan.cpp:101:18: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
scanf("%d",&V[i][j]);
~~~~~^~~~~~~~~~~~~~~