蓝杯十五

/*买不到的题目问题描述小明开了一家糖果店。他别出心裁:把水果糖包成4颗一包和7颗一包的两种。糖果不能拆包卖。小朋友来买糖的时候,他就用这两种包装来组合。当然有些糖果数目是无法组合出来的,比如要买 10 颗糖。你可以用计算机测试一下,在这种包装情况下,最大不能买到的数量是17。大于17的任何数字都可以用4和7组合出来。本题的要求就是在已知两个包装的数量时,求最大不能组合出的数字。输入格式两个正整数,表示每种包装中糖的颗数(都不多于1000)

输出格式一个正整数,表示最大不能买到的糖数

样例输入1 4 7

样例输出1 17

样例输入2  3 5

样例输出27*/ 

#include<stdio.h> 

int GYS(int n,int m)//最大公约数  {   

int t;   

if(n<m)      {       

t=n;        n=m;        m=t;     

}     

if(n%m==0)     

return m;   

return GYS(m,n%m); 

}

int GBS(int n,int m)//最小公倍数  {     

int awn;     

awn=n*m/GYS(n,m);     

return awn;  } 

int main()  {   

int i,j,t,gcd,n,m,aws=0,flag,k;   

scanf("%d %d",&n,&m);     

gcd=GBS(n,m);     

if(n<m)      {        t=n;        n=m;        m=t;      }     

int x=(gcd/m)+1;     

for(i=gcd;i>=1;i--)      {       

flag=0;       

for(k=0;k<=x;k++)           

for(j=x;j>=0;j--)            {             

  if(!(k==0&&j==0))//防止除零错误              {               

if(i%(n*k+m*j)==0)               

  flag=1;              }            }       

if(flag==0)        {         

aws=i;         

break;        }   

}   

  printf("%d\n",aws);     

return 0;


#include <iostream>

#include <algorithm>

using namespace std;

int A[100000];

int main(){ 

  int N1, N2; 

cin >> N1 >> N2;            //N1较小、N2较大。

  if (N1 > N2)       

swap(N1, N2);   

for (int i = 0;i<100000/N1; i++)    {     

for (int j = 0; j<100000 / N2; j++)        {            if (i*N1 + j*N2 < 100000)               

A[i*N1 + j*N2] = 1;        }    } 

for (int i = 99999; i >= N1;i--)    {     

  if (!A[i])        {         

cout << i << endl;           

break;        }    }   

return 0;

}


二、/*复数四则运算 设计复数库,实现基本的复数加减乘除运算。  输入时只需分别键入实部和虚部,以空格分割,两个复数之间用运算符分隔;输出时按a+bi的格式在屏幕上打印结果。参加样例输入和样例输出。  注意考虑特殊情况,无法计算时输出字符串"error"。

样例输入2 4 * -3 2

样例输出-14-8i

样例输入3 -2 + -1 3

样例输出2+1i*/

#include<stdio.h>

int main(){   

char sign;   

double a,b,c,d;   

scanf("%lf %lf %c %lf %lf",&a,&b,&sign,&c,&d);   

if(c==0 && d==0){       

printf("error");    }

else if(sign=='+'){        printf("%g+%gi",a+c,b+d);    }

else if(sign=='-'){       

printf("%g%gi",a-c,b-d);    }

else if(sign=='*'){       

printf("%g%gi",a*c-b*d,a*d+b*c);    }

else if(sign=='/'){       

printf("%g%gi",(a*c+b*d)/(c*c+d*d),(b*c-a*d)/(c*c+d*d));    }

else{        printf("error");    }

return  0; 

}


图片发自简书App

图片发自简书App

图片发自简书App

图片发自简书App

图片发自简书App
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容