10102

Critical t get the question but easy to solve. Problem asks to find the maximum length of minimum distance. #include <iostream> #include <cstdio> #include <vector> #include <stack> #include <cmath> #include <cstring> #include <fstream> #include <string> #include <algorithm> #define INF 100000000 #define ll long long using namespace std; struct Cord{ int x,y; }; int M; char

496

Using set::set_intersect(params) the problem can be solved. #include <iostream> #include <cstdio> #include <cstring> #include <cmath> #include <set> #include <algorithm> #include <sstream> #define INF 1000000 using namespace std; set<int> Set1,Set2,inn; int main() { int n; string str; stringstream ss; while(getline(cin,str)) { Set1.clear(); Set2.clear(); inn.clear(); ss.clear(); ss<<str; while(ss>>n) { Set1.insert(n); } getline(cin,str); ss.clear(); ss<<str; while(ss>>n) { Set2.insert(n);

467

#include <iostream> #include <cstdio> #include <sstream> #include <string> #include <cstring> #include <algorithm> using namespace std; int signal[4000]; int main() { string str; int kase=1; stringstream ss; int a,b,c,mx; int arr[12]; while(getline(cin,str)) { ss.clear(); ss<<str; int k=1; int time=0; while(ss>>arr[k])k++; sort(arr+1,arr+k); memset(signal,0,sizeof(signal)); for(int i=1;i<k;i++) { for(int j=0;j<3601;) { a=arr[i]-5; b=5; c=arr[i]; while(a–)signal[j++]++; while(b–)signal[j++]=0; while(c–)signal[j++]=0; } }

10196

#include <iostream> #include <string> #include <cstring> #include <cstdio> using namespace std; char board[8][8]; struct IDX{ int i,j; }; bool isCheck_knight(int I,int J,int color) { int dx[8]={1,1,-1,-1,2,2,-2,-2}; int dy[8]={2,-2,2,-2,1,-1,1,-1}; int a,b; for(int i=0;i<8;i++) { a=dx[i]+I; b=dy[i]+J; if(a>=0 && a<8 && b>=0 && b<8) { if(board[a][b]=='N' && color==0) return 1; else if(board[a][b]=='n' && color==1) return 1; }

10044

#include <iostream> #include <string.h> #include <string> #include <vector> #include <cstdio> #include <map> #define ll long long #define MAX_WORD 105 #define INF 100000000 using namespace std; int min_arr[1000001]; map<string,int> nameErdos; int minval(string **vb,int i) { int v = nameErdos[0]]; for(int j=1;vb[i][j]!="END";j++) { v = min(v,nameErdos[j]]); } return v; } int main() { int t,P,N,MN; int kase=1;

1062

WA Code: #include <iostream> #include <map> #include <string> using namespace std; map<char,int> m,np; //vector<char> v; int main() { string str; int cnt; int kase=1; while(cin>>str) { if(str=="end") break; cnt=1; np.clear(); m.clear(); for(int i=0;i<str.size();i++) { if(m[str[i]]<(i+1)) m[str[i]]=i+1; } for(map<char,int>::iterator ii=m.begin();ii!=m.end();++ii) { cout<<ii->first<<" "<<ii->second<<"\n"; int pos=ii->second; char c=ii->first; int f=0; for(int i=0;i<pos;i++) { if(str[i]<c && np[str[i]]==0) {

12801

#include <iostream> #include <stdio.h> using namespace std; int circum[10001]; int main() { int C,N; int res=0; double div; while(cin>>C) { cin>>N; div=(double)C/N; for(int i=0;i<N;i++) { cin>>circum[i]; } circum[N]=circum[0]+C; for(int i=circum[0];i<circum[1];i++) { int dis=i; res=0; int f=1; for(int j=1;j<=N;j++) { if(dis<circum[j] && circum[j]<=(dis+div)) dis+=div; else { f=0; break; } } if(f) { res=1; break; } }