蓝杯三十一

系统练习三十一

  算法训练 学做菜 

时间限制:1.0s  内存限制:256.0MB

提交此题   

问题描述

  涛涛立志要做新好青年,他最近在学做菜。由于技术还很生疏,他只会用鸡蛋,西红柿,鸡丁,辣酱这四种原料来做菜,我们给这四种原料标上字母A,B,C,D。

  涛涛现在会做的菜有五种:

  1、 西红柿炒鸡蛋 原料:AABDD

  2、 酸辣鸡丁 原料:ABCD

  3、 宫保鸡丁 原料:CCD

  4、 水煮西红柿 原料:BBB

  5、 怪味蛋 原料:AD

  这天早上,开开去早市给涛涛买了一些原料回来。由于事先没有什么计划,涛涛决定,对于现存的原料,每次尽量做菜单上靠前(即编号小)的菜。

  现在请你写一个程序,判断一下开开和涛涛中午能吃到哪些菜。

输入格式

  共4个整数a,b,c,d。分别表示开开买的A,B,C,D这4种原料的数量。每种原料不会超过30份。

输出格式

  输出5行。其中第i行表示涛涛做的第i种菜的数目。

样例输入

3

1

2

4

样例输出

1

0

1

0

1

#include 

 

int main () { 

     

    int a,b,c,d; 

     

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

     

    int s = 0; 

    switch(1){ 

        case 1: 

            while(1){ 

                if(a >= 2 && b >= 1 && d >= 2){ 

                    a -= 2; 

                    b -= 1; 

                    d -= 2; 

                    s ++; 

} else { 

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

                    s = 0; 

                    break; 

                } 

            } 

        case 2: 

            while(1){ 

                if(a >= 1 && b >= 1 && c >=1 && d >= 1){ 

                    a -= 1; 

                    b -= 1; 

                    c -= 1; 

                    d -= 1; 

                    s ++; 

            } else { 

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

                    s = 0; 

                    break; 

                } 

            } 

        case 3: 

            while(1){ 

                if(c >= 2 && d >= 1){ 

                    c -= 2; 

                    d -= 1; 

                    s ++; 

  } else { 

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

                    s = 0; 

                    break; 

                } 

            } 

        case 4: 

            while(1){ 

                if(b >= 3){ 

                    b -= 3; 

                    s ++; 

                } else { 

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

                    s = 0; 

                    break; 

                } 

            } 

case 5: 

            while(1){ 

                if(a >= 1 && d >= 1){ 

                    a -= 1; 

                    d -= 1; 

                    s ++; 

                } else { 

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

                    s = 0; 

                    break; 

                } 

            } 

    } 

     

    return 0; 

算法训练 4-2找公倍数 

时间限制:1.0s  内存限制:256.0MB

提交此题   

问题描述

  这里写问题描述。

  打印出1-1000所有11和17的公倍数。

样例输入

一个满足题目要求的输入范例。

例:

样例输出

与上面的样例输入对应的输出。

例:

7

4

1

8

5

#include 

int main(){ 

    int i=11, j=17; 

    while(i<1001){ 

        if(i%j==0)  printf("%d\n",i); 

        i+=11; 

    } 

    return 0; 

蓝杯三十一_第1张图片
图片发自App

蓝杯三十一_第2张图片
图片发自App
蓝杯三十一_第3张图片
图片发自App
蓝杯三十一_第4张图片
图片发自App
蓝杯三十一_第5张图片
图片发自App

你可能感兴趣的:(蓝杯三十一)