ACM水题

2017.03.18

5个数求最值

描述
设计一个从5个整数中取最小数和最大数的程序
输入
输入只有一组测试数据,为五个不大于1万的正整数
输出
输出两个数,第一个为这五个数中的最小值,第二个为这五个数中的最大值,两个数字以空格格开。
样例输入

1 2 3 4 5

样例输出

1 5

代码实现

#include 
using namespace std;
int main(){
    int num[5];
    int min,max;
    for(int i=0;i<5;i++){
        cin>>num[i];
    }
    min = max = num[0];
    for(int j=0;j<5;j++){
        if(min>num[j]){
            min = num[j];
        }
        if(max < num[j]){
            max = num[j];
        }
    }
    cout<

水仙花数

描述
请判断一个数是不是水仙花数。
其中水仙花数定义各个位数立方和等于它本身的三位数。
输入
有多组测试数据,每组测试数据以包含一个整数n(100<=n<1000)
输入0表示程序输入结束。
输出
如果n是水仙花数就输出Yes
否则输出No
样例输入

153
154
0

样例输出

Yes
No

代码实现

#include 
#include
#include
using namespace std;
int main(){
    vector v;
    int temp;
    while(true){
        cin>>temp;
        if(temp == 0){
        break;
        }else{
            int sum = 0,num = temp;
            for(;num>0;num/=10){
                sum += (num%10) * (num%10)*(num%10);
            }
            if(temp == sum){
            v.push_back("Yes");
            }else{
            v.push_back("No");
            }
        }
    }
    for(int i=0;i

三个数从小到大排序

描述
现在要写一个程序,实现给三个数排序的功能

输入
输入三个正整数
输出
给输入的三个正整数排序
样例输入

20 7 33

样例输出

7 20 33

代码实现

#include 
using namespace std;
int main(){
    int num[3];
    for(int i=0;i<3;i++)
        cin>>num[i];
    for(int i=0;i<3;i++){
        int min = num[i];
        for(int j=i+1;j<3;j++){
            if(num[i]>num[j]){
                int temp = num[j];
                num[j] = num[i];
                num[i] = temp;
            }
        }
    }
    for(int i=0;i<3;i++){
        cout<

2017.03.19

素数求和问题

描述
现在给你N个数(0 输入
第一行给出整数M(0 每组测试数据第一行给你N,代表该组测试数据的数量。
接下来的N个数为要测试的数据,每个数小于1000
输出
每组测试数据结果占一行,输出给出的测试数据的所有素数和
样例输入

3
5
1 2 3 4 5
8
11 12 13 14 15 16 17 18
10
21 22 23 24 25 26 27 28 29 30

样例输出

10
41
52

代码实现

#include 
#include 
#include 

using namespace std;

int getSum(int *num,int size){
    int result = 0;
    for(int i=0;i>n;
    int *result = new int[n];
    for(int i=0;i>group;
        int *num = new int[group];
        for(int j=0;j>num[j];
        }
        result[i] = getSum(num,group);
        delete []num;
    }
    for(int i=0;i

你可能感兴趣的:(ACM水题)