需要考虑只有一个常数的特殊情况,求导后的结果为0 0 。
自己的程序不够简洁
#include<stdio.h>
int main(){
int a,b;
int a1,b1;
bool flag = true;
while(scanf("%d",&a)!=EOF){
scanf("%d",&b);
a1 = a*b;
b1=b-1;
if(flag){
if(b1!=-1)
{
printf("%d %d",a1,b1);
flag=false;
}
}
else {
if(b1!=-1){
printf(" %d %d",a1,b1);
}
}
}
if(flag)
printf("%d %d",0,0);
}
别人的程序,比较好。很简洁明了
#include <stdio.h>
#include <string.h>
int main()
{
int n, e, flag = 0;
while (scanf("%d%d", &n, &e) != EOF)
{
if( n*e )
{
if(flag)
printf(" ");
else
flag = 1;
printf("%d %d", n*e, e-1);
}
}
if(!flag) printf("0 0");
return 0;
}