数学 6.10

1

#include<stdio.h>

 #include<math.h>

 int main()

 {

  long long m,n,x,y,i,j,l,sum;

  while(scanf("%lld%lld",&m,&n)!=EOF&&(m!=0&&n!=0))

  {

  sum=0;

  if(m>n)

    {

     i=m;m=n;n=i;

}

  x=m*(m-1);

y=n*(n-1);

l=m*(m-1)*(n-m+1);

for(i=m-1;i>1;i--)

{

l+=2*i*(i-1);

}

sum=x*n+y*m+2*l;

printf("%lld\n",sum);

 }

  return 0;

  }

2

 #include<stdio.h>

 int main()

 {

  long long n,i,a[1000001];

  a[4]=1;a[5]=3;

  for(i=6;i<1000001;i++)

{

if(i%2==0)

     {

  a[i]=a[i-1]+(1+(i-2)/2)*((i-2)/2)-(i-2)/2;

   }

 else

  {

  a[i]=a[i-1]+(1+(i-2)/2)*((i-2)/2);

    }

    }

  while(scanf("%lld",&n)!=EOF&&n>=3)

  {

  if(n==3)

  {

  printf("0\n");

 }

else

{

printf("%lld\n",a[n]);

}

}

  return 0;

  }

3

#include<stdio.h>

#include<math.h>

long long gcd(long long a,long long b)

{

if(a%b!=0)

{

return gcd(b,a%b);

}

else

{

return b;

}

}

 int main()

 {

  long long  a,b,c,d,k,x,y;

  while(scanf("%lld%lld",&a,&b)!=EOF&&(a!=0&&b!=0))

  {

    k=gcd(a,b);

    c=a*a-4*k*b;

    if(c<0)

    {

     printf("No Solution\n");continue;

   }

  d=sqrt(c);

  if(d*d!=c||(d+a)%2!=0||(d-a)%2!=0)

  {

   printf("No Solution\n");continue;

  }

  x=(d+a)/2;y=a-x;

  if(x>y)

  {

   k=x;x=y;y=k;

  }

      printf("%lld %lld\n",x,y);

}

  return 0;

  }

3*

#include<stdio.h>

#include<math.h>

long long gcd(long long a,long long b)

{

if(a%b!=0)

{

return gcd(b,a%b);

}

else

{

return b;

}

}

 int main()

 {

  long long  a,b,c,k;

  while(scanf("%lld%lld",&a,&b)!=EOF&&(a!=0&&b!=0))

  {

    k=gcd(a,b);

    c=a*a-4*k*b;

    if(c>=0)

    {

   if(sqrt(c)==(int)sqrt(c))

      {

     if((a+(int)sqrt(c))%2==0&&((a-(int)sqrt(c))%2==0))

     {

     printf("%lld %lld\n",(a-(int)sqrt(c))/2,(a+(int)sqrt(c))/2);

      }

    }

    else

{

printf("No Solution\n");

}

  }

else

{

printf("No Solution\n");

}

}

  return 0;

  }

4

 #include<stdio.h>

 typedef long long ll;

 #define mod 100003;

 ll f(ll m,ll n)

 {

  ll a=1,base=m%mod;

  while(n)

  {

  if(n%2!=0)

  {

  a=a*base%mod;

 }

base=base*base%mod;

n>>=1;

 }

return a;

 }

 int main()

 {

  long long  m,n,i,x,y,z;

  while(scanf("%lld%lld",&m,&n)!=EOF)

  {

       x=f(m,n)%mod;

 y=m*f(m-1,n-1)%mod;

 z=x-y;

 if(z<0)

 {

  z+=mod;

 }

 printf("%lld\n",z);

 }

  return 0;

  }

5

#include<stdio.h>

#include<string.h>

typedef long long ll;

char a[100000];

double f(ll i)  

{  

    double sum=0;  

    ll j;  

    ll num=-1;  

    for (i;a[i]>='0'&&a[i]<='9'||a[i]=='.';i++)  

    {  

        if (a[i]=='.')

{

           num=0;

}

        else  

        {  

           sum=sum*10+a[i]-48;  

           if(num>=0)

   {

    num++;

 }  

        }  

    }  

    for(j=0;j<num;j++)  

    {

        sum*=0.1;  

    }

    if (a[i]=='m')  

        sum*=0.001;  

    else if(a[i]=='k')  

        sum*=1000;  

    else if(a[i]=='M')  

        sum*=1000000;  

    return sum;  

}  

int main()

{

double I,U,P;

ll i,n,t,count,len;

t=0;

scanf("%lld",&n);

while(n--)

{

t++;I=0;U=0;P=0;count=0;  

getchar();

gets(a);

len=strlen(a);

for(i=0;i<len;i++)

{

if(a[i]=='I'&&a[i+1]=='=')

{

I=f(i+2);count++;

}

if(a[i]=='U'&&a[i+1]=='=')

{

U=f(i+2);count++;

}

if(a[i]=='P'&&a[i+1]=='=')

{

    P=f(i+2);count++;

}

if(count==2)

{

break;

}

}

if(I&&U)

{

printf("Problem #%lld\n",t);

printf("P=%.2lfW\n",I*U);

}

if(I&&P)

{

printf("Problem #%lld\n",t);

printf("U=%.2lfV\n",P/I);

}

if(P&&U)

{

printf("Problem #%lld\n",t);

printf("I=%.2lfA\n",P/U);

}

printf("\n");

}

return 0;

}

 

猜你喜欢

转载自blog.csdn.net/haohaoxuexilmy/article/details/81116550