一些项目——给你n个整数,求他们中所有奇数的乘积。

Problem Description

给你n个整数,求他们中所有奇数的乘积。

Input

输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数。

Output

输出每组数中的所有奇数的乘积,对于测试实例,输出一行。

Sample Input

3 1 2 3
4 2 3 4 5

Sample Output

3
15

代码

#include <iostream>
using namespace std;
int main( )
{
    int n,m,i,s;
    while(cin>>n)
    {
        s=1;
        for(i=0; i<n; i++)
        {
            cin>>m;
            if(m%2!=0)
                s=s*m;
        }
        cout<<s<<endl;
    }
    return 0;
}

学习感悟:说来惭愧,由于我没好好审题,以为每组数据中的数字是一个意思,没有意识到第一个数字限制的范围,一个劲的想怎么用ctrl+z结束循环,甚至后面还用了两重循            环,知道我从网上找到答案再分析。。。。。唉,以此来警示自己吧。

时间: 2024-12-12 11:25:19

一些项目——给你n个整数,求他们中所有奇数的乘积。的相关文章

交换一个整数二进制表示中的奇数位和偶数位

题目 原文: 写程序交换一个整数二进制表示中的奇数位和偶数位,用尽可能少的代码实现. (比如,第0位和第1位交换,第2位和第3位交换…) 解答 这道题目比较简单.分别将这个整数的奇数位和偶数位提取出来,然后移位取或即可. 代码如下: int swap_bits(int x){ return ((x & 0x55555555) << 1) | ((x >> 1) & 0x55555555); } 当然也可以采用更自然的方式来写这段代码: int swap_bits1(

求奇数的乘积

Problem Description 给你n个整数,求他们中所有奇数的乘积. Input 输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数. Output 输出每组数中的所有奇数的乘积,对于测试实例,输出一行. Sample Input 3 1 2 3 4 2 3 4 5 Sample Output 3 15 code: #include<stdio.h>int main(){      int

练习2 E题 - 求奇数的乘积

Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Description 给你n个整数,求他们中所有奇数的乘积. Input 输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数. Output 输出每组数中的所有奇数的乘积,对于测试实例,输出一行. Sample Input 3 1 2 3 4 2 3

求奇数的乘积 AC 杭电

求奇数的乘积 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 56573    Accepted Submission(s): 36490 Problem Description 给你n个整数,求他们中所有奇数的乘积. Input 输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,

HDOJ-2006求奇数的乘积

Problem Description 给你n个整数,求他们中所有奇数的乘积. Input 输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数. Output 输出每组数中的所有奇数的乘积,对于测试实例,输出一行. Sample Input 3 1 2 3 4 2 3 4 5 Sample Output 3 15 代码实现: 1 #include<stdio.h> 2 int main(){ 3 in

HDU 2006 求奇数的乘积

http://acm.hdu.edu.cn/showproblem.php?pid=2006 Problem Description 给你n个整数,求他们中所有奇数的乘积. Input 输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数. Output 输出每组数中的所有奇数的乘积,对于测试实例,输出一行. Sample Input 3 1 2 3 4 2 3 4 5 Sample Output 3 1

2006.求奇数的乘积

#include<stdio.h> int main(){          int n,a[10],i,sum=1;          scanf("%d",&n);          for(i=0;i<n;i++)          scanf("%d",&a[i]);          for(i=0;i<n;i++){          if(a[i]%2!=0)          sum*=a[i];}      

求奇数的乘积 题解

给你n个整数,求他们中所有奇数的乘积. Input输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数.Output输出每组数中的所有奇数的乘积,对于测试实例,输出一行.Sample Input 3 1 2 3 4 2 3 4 5 Sample Output 3 15 考察的 奇偶函数的提取,其他的倒没有什么难度.附上代码 原文地址:https://www.cnblogs.com/hrlsm/p/1225

【c语言】输入一组整数,求出最大子序列的和

// 输入一组整数,求出最大子序列的和. // 例如:序列: - 2 11 - 4 13 - 5 - 2,则最大子序列和为20. // 序列: - 6 2 4 - 7 5 3 2 - 1 6 - 9 10 - 2,则最大子序列和为16 #include <stdio.h> int Max_Son(int *p, int len) { int Max_Sum = 0; int i, j; for (i = 0; i < len; ++i) { int sum = 0; for (j = i