您的位置:首页 > 编程语言

网易雷火盘古实习2018编程题

2017-06-06 10:50 281 查看
#include <bits/stdc++.h>
using namespace std;
int main()
{
string a;
while(cin>>a)
{
int num=0,i;
char c;
if(a.size()==0)continue;
for(i=0;i<a.size();i++)
{
if(i==0)
{
num++;
}
else if(a[i]==a[i-1])
{
num++;
}
else if(a[i]!=a[i-1])
{
cout<<num<<a[i-1];
num=1;
}
}
cout<<num<<a[i-1]<<endl;
}
return 0;
}
#include <bits/stdc++.h>
using namespace std;
int a[110][110];
int N,D;
int main()
{
while(cin>>N>>D)
{
int i,j;
int max=0,sum=0;
for(i=0; i<N; i++)
for(j=0; j<N; j++)
{
cin>>a[i][j];
}
int k;
for(i=0; i<N; i++)
for(j=0; j<N; j++)
{
if(i+D-1<N)
{
sum=0;
for(k=0; k<D; k++)
sum+=a[k+i][j];
if(max<sum)max=sum;
}
if(j+D-1<N)
{
sum=0;
for(k=0; k<D; k++)
sum+=a[i][k+j];
if(max<sum)max=sum;
}
if(i+D-1<N&&j+D-1<N)
{
sum=0;
for(k=0; k<D; k++)
sum+=a[i+k][j+k];
if(max<sum)max=sum;
}
if(i+D-1<N&&j-(D-1)>=0)
{
sum=0;
for(k=0; k<D; k++)
sum+=a[i+k][j-k];
if(max<sum)max=sum;
}
}
cout<<max<<endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  算法