/in/foo.cc:1:30: warning: extra tokens at end of #include directive
#include<bits/stdc++.h>using namespace std;int up[2001][2001],lef[2001][2001],pan[2001][2001];stack<int> st;int min(int a,int b) { return a>b?b:a;}int max(int a,int b) { return a>b?a:b;}int main() { int n,m,i,j,x,y,temp,s1=0,s2=0; cin>>n>>m; for(i=1; i<=n; i++) for(j=1; j<=m; j++) { cin>>pan[i][j]; up[i][j]=1; lef[i][j]=1; } for(i=1; i<=n; i++) for(j=1; j<=m; j++) { if(j>1) { if(pan[i][j]!=pan[i][j-1]) lef[i][j]=1+lef[i][j-1]; } if(i>1) { if(pan[i][j]!=pan[i-1][j]) up[i][j]=1+up[i-1][j]; } } for(i=1; i<=n; i++) for(j=m; j>=1; j=j-lef[i][j]) { st.push(j-lef[i][j]+1); for(x=j-lef[i][j]+2; x<=j; x++) { while((!st.empty())&&up[i][x]<up[i][st.top()]) { temp=st.top(); st.pop(); if(!st.empty()) { s1=max(s1,(x-st.top()-1)*up[i][temp]); s2=max(s2,min(up[i][temp],(x-st.top()-1))*min(up[i][temp],(x-st.top()-1))); } else { s1=max(s1,(x-j+lef[i][j]-1)*up[i][temp]); s2=max(s2,min(up[i][temp],(x-j+lef[i][j]-1))*min(up[i][temp],(x-j+lef[i][j]-1))); } } if(st.empty()||up[i][x]>up[i][st.top()]) st.push(x); } x=j+1; while(!st.empty()) { temp=st.top(); st.pop(); if(!st.empty()) { s1=max(s1,(x-st.top()-1)*up[i][temp]); s2=max(s2,min(up[i][temp],(x-st.top()-1))*min(up[i][temp],(x-st.top()-1))); } else { s1=max(s1,(lef[i][j])*up[i][temp]); s2=max(s2,min(up[i][temp],(lef[i][j]))*min(up[i][temp],(lef[i][j]))); } } } cout<<s2<<endl<<s1<<endl; return 0;}
^~~~~~~~~
/in/foo.cc:1:1472: fatal error: bits/stdc++.h>usin: No such file or directory
#include<bits/stdc++.h>using namespace std;int up[2001][2001],lef[2001][2001],pan[2001][2001];stack<int> st;int min(int a,int b) { return a>b?b:a;}int max(int a,int b) { return a>b?a:b;}int main() { int n,m,i,j,x,y,temp,s1=0,s2=0; cin>>n>>m; for(i=1; i<=n; i++) for(j=1; j<=m; j++) { cin>>pan[i][j]; up[i][j]=1; lef[i][j]=1; } for(i=1; i<=n; i++) for(j=1; j<=m; j++) { if(j>1) { if(pan[i][j]!=pan[i][j-1]) lef[i][j]=1+lef[i][j-1]; } if(i>1) { if(pan[i][j]!=pan[i-1][j]) up[i][j]=1+up[i-1][j]; } } for(i=1; i<=n; i++) for(j=m; j>=1; j=j-lef[i][j]) { st.push(j-lef[i][j]+1); for(x=j-lef[i][j]+2; x<=j; x++) { while((!st.empty())&&up[i][x]<up[i][st.top()]) { temp=st.top(); st.pop(); if(!st.empty()) { s1=max(s1,(x-st.top()-1)*up[i][temp]); s2=max(s2,min(up[i][temp],(x-st.top()-1))*min(up[i][temp],(x-st.top()-1))); } else { s1=max(s1,(x-j+lef[i][j]-1)*up[i][temp]); s2=max(s2,min(up[i][temp],(x-j+lef[i][j]-1))*min(up[i][temp],(x-j+lef[i][j]-1))); } } if(st.empty()||up[i][x]>up[i][st.top()]) st.push(x); } x=j+1; while(!st.empty()) { temp=st.top(); st.pop(); if(!st.empty()) { s1=max(s1,(x-st.top()-1)*up[i][temp]); s2=max(s2,min(up[i][temp],(x-st.top()-1))*min(up[i][temp],(x-st.top()-1))); } else { s1=max(s1,(lef[i][j])*up[i][temp]); s2=max(s2,min(up[i][temp],(lef[i][j]))*min(up[i][temp],(lef[i][j]))); } } } cout<<s2<<endl<<s1<<endl; return 0;}
^
compilation terminated.