现在位置: 首页 > 算法 > 文章
2017年01月10日 算法 ⁄ 共 652字 评论关闭
/** * 将任意vo转化成map * * @param t vo对象 * @return */ private <T> Map<String, Object> convert2Map(T t){ Map<String, Object> result = new HashMap<String, Object>(); Method[] methods = t.getClass().getMethods(); try { for (Method method : methods) { Class<?>[] paramClass = method.getParameterTypes(); if (paramClass.length > 0) { ...
阅读全文
2016年10月22日 算法 ⁄ 共 396字 评论关闭
#include #include #include using namespace std; int main(){ int n;   while(cin>>n&&n>=3&&n<=5000){   char c[5001],d[5001];   int dp[2][5001];   getchar(); for(int i=1;i<=n;i++) { cin>>c[i]; d[n-i+1]=c[i]; } memset(dp,0,sizeof(dp)); for(int i=1;i<=n;i++)   for(int j=1;j<=n;j++)   {   dp[i%2][j]=max(dp[(i-1)%2][j],dp[i%2][j-1]);   if(c[i]==d[j])    dp[...
阅读全文
2016年10月22日 算法 ⁄ 共 297字 评论关闭
#include using namespace std; int main(){ int N; while(cin>>N&&N>1&&N<=100){ int a[105][105]; for(int i=1;i<=N;i++)   for(int j=1;j<=i;j++)     cin>>a[i][j];    for(int i=N-1;i>=1;i--)       for(int j=1;j<=i;j++)       {       int max=a[i+1][j]>a[i+1][j+1]? a[i+1][j]:a[i+1][j+1];       a[i][j]+=max;       }       cout<<a[1][1]<<end...
阅读全文
2016年10月22日 算法 ⁄ 共 382字 评论关闭
#include #include int num; int f(int n){     num++; if(n==1) return num; else if(n%2==1) return f(3*n+1); else return f((int)n/2); } using namespace std; int main(){ int i,j; while(scanf("%d%d",&i,&j)!=EOF&&i>0&&i<10000&&j>0&&j<10000){ //i>=j!!! int mi,ma; if(i>j){ mi=j; ma=i; } else{ mi=i; ma=j; } num=0; f(mi); int max=num; for(int k...
阅读全文
2016年10月22日 算法 ⁄ 共 379字 评论关闭
#include using namespace std; int main(){ int n; while(cin>>n&&n){ int a[35],sum=0,i=0,h=0; while(n--){ cin>>a[i]; sum+=a[i]; i++; }  if(sum%2==0){ sum/=2; for(int j=0;j if(h   h+=a[j];   continue; } else if(sum==h){ cout<<"Sam stops at position "<<j<<" and Ella stops at position "<<j+1<<'.'<<endl; break; } else{ cout<<"No equal pa...
阅读全文
2016年10月22日 算法 ⁄ 共 754字 评论关闭
#include #include #include using namespace std; int d[500]; bool f(int tar,char c[]){ int len=strlen(c),flag=0; char a[10]={'a'},b[10]={'a'}; for(int e=0;e   for(int f=0;f     for(int g=0;g       for(int h=0;h          for(int i=0;i          {           if(e!=f&&e!=g&&e!=h&&e!=i&&f!=g&&f!=h&&f!=i&&  g!=h&&g!=i&&h!=i&am...
阅读全文
2016年10月22日 算法 ⁄ 共 410字 评论关闭
#include #include using namespace std; int main(){ int n; while(cin>>n&&n){ int ans=0,a[300]={0},h=0,b[300]={0}; char c[300]; cin>>c; for(int i=0;i { if(a[c[i]]==0){ if(ans ans++;a[c[i]]++;b[c[i]]=1; } else { a[c[i]]++;b[c[i]]=0; } }  else if(a[c[i]]==1&&ans<=n&&b[c[i]]==1){ ans--; } else if(a[c[i]]==1&&ans<=n&&b[c[i]]==0){ h++; }   } ...
阅读全文
2016年10月22日 算法 ⁄ 共 315字 评论关闭
#include #include int main(){     char s[20];     while(gets(s)){     if(strcmp(s,"ENDOFINPUT")==0)      return 0;     char a[200];     gets(a);     for(int i=0;a[i]!='\0';i++)      if(a[i]>=65&&a[i]<=69)        a[i]+=21;      else if(a[i]>=70&&a[i]<=90)        a[i]-=5;      else        continue;     gets(s); if(strcmp(s,"END")!=0)  break;      puts(a);         }  ...
阅读全文
2016年10月22日 算法 ⁄ 共 233字 评论关闭
#include #include using namespace std; bool a[11000]; int f(int n){ int sum=n; while(n){ sum+=n; n/=10; } return sum; } int main(){ memset(a,false,sizeof(a)); for(int i=1;i<10000;i++)  a[f(i)]=true; for(int i=1;i<10000;i++)  if(!a[i])   cout<<i<<endl;   return 0; }
阅读全文
2016年10月22日 算法 ⁄ 共 620字 评论关闭
#include #include using namespace std; int main(){ char a[150][10],c[10]; int b[150][30]={0},la=0; while(cin>>a[la]&&strcmp(a[la],"XXXXXX")!=0){ for(int i=0;i  b[la][a[la][i]-97]++; la++; } while(cin>>c&&strcmp(c,"XXXXXX")!=0){ int d[30]={0},len=0; char g[200][10]; for(int i=0;i  d[c[i]-97]++; for(int i=0;i int flag=1; for(int j=0;j<26;j++){ if(b[i][j]!=d[j]){ ...
阅读全文