L1-005 考试座位号
#include <stdio.h>
int main()
{
int N;
scanf("%d",&N);
int number[N][16],place[N],num[N];
int i;
for(i = 0;i<N;i++)
{
scanf("%s%d%d",&number[i],&place[i],&num[i]);
}
int M;
scanf("%d",&M);
int place0[M];
for(i = 0;i<M;i++)
{
scanf("%d",&place0[i]);
}
int x;
for(i = 0;i<M;i++)
{
for(x = 0;x<N;x++)
{
if(place0[i]==place[x])
{
printf("%s %d",number[x],num[x]);
printf("\n");
}
else continue;
}
}
}
L1-006 连续因子
#include <stdio.h>
#include <math.h>
int sushu(int x)
{
int i;
for(i = 2;i<sqrt(x);i++)
{
if(x%i==0)
return 1;
}
return 0;
}
int main()
{
long long N;//注意N的取值范围
scanf("%lld",&N);
long long i,s,m;
int line = 0;
int p;
int start;
if(sushu(N))
{
for(i = 2;i<sqrt(N);i++)
{
s = 1;
for(m = i;s*m<=N;m++)
{
s = s*m;
if(N%s == 0&&(m-i+1>line))
{
line = m - i+1;
start = i;
}
}
}
printf("%d\n",line);
for(p = start;p<start+line;p++)
{
if(p!=start+line-1) printf("%d*",p);
else if(p == start+line-1) printf("%d",p);
}
printf("\n");
}
else
printf("1\n%lld\n",N);
}