标签:style blog ar for 2014 div sp log on
250:简单题
class RunningAroundPark { public: int numberOfLap(int N, vector <int> d) { int n=d.size(); int ans=1,last=-1; for(int i=0;i<n;i++) { if(d[i]<=last) { ans++; last=d[i]; } else last=d[i]; } return ans; } };
class PotentialGeometricSequence { public: int numberOfSubsequences(vector <int> d) { int n=d.size(); if(n==1) return 1; int ans=0,last=1,slope=d[1]-d[0]; for(int i=2;i<n;i++) { int newslope=d[i]-d[i-1]; if(newslope==slope) { last++; } else { last++; int jia=(last+1)*last/2; if(ans) jia--; ans+=jia; last=1; slope=newslope; } } last++; int jia=(last+1)*last/2; if(ans) jia--; ans+=jia; return ans; } };
1000: 背包
typedef long long int LL; const LL mod=1000000007LL; class GoodSubset { public: int numberOfSubsets(int goodValue, vector <int> d) { int n=d.size(); map<LL,LL> mp; map<LL,LL>::reverse_iterator it; mp[1]=1; for(int i=0;i<n;i++) { for(it=mp.rbegin();it!=mp.rend();it++) { LL t=it->first*d[i]; if(goodValue%t==0) { mp[t]=(mp[t]+it->second)%mod; } } } mp[1]--; return mp[goodValue]; } };
标签:style blog ar for 2014 div sp log on
原文地址:http://blog.csdn.net/ck_boss/article/details/39143061