对于HDU2006的不同解法 不放弃任何一个小点

http://acm.hdu.edu.cn/showproblem.php?pid=2006

这是题目。

我写题时我总是会被这些小点所烦恼。比如这道题中的假设至少一个奇数,每到这个时候就觉得自己怎么这么傻。。那就是默认测试数据中不会难为你不出现奇数。。不过写一下判断也好,起码能提高实用性(暗笑)。

下面是正文。

贴上代码

#include<stdio.h>
#include<malloc.h>
int main()
{
	int n;
	int *p;
	int i;
		
	while(scanf("%d", &n) != EOF){
		int sum = 1;
		
		p = (int*)malloc(sizeof(int) * n);

		for(i = 0; i < n; i++)
			scanf("%d", &p[i]);
	
		for(i = 0; i < n; i++){
			if(p[i] % 2 != 0)
				sum = sum * p[i];
		}
		
		printf("%d\n", sum);
		
		free(p);
	}
	
	return 0;
}

最近在学习动态分配内存,用了还是很舒服的,没有初始化多余的数组,强迫症患者表示很棒。

不过对于这种多数据只会数组好像显得很捞,我忘了其实初始化一个变量就够了。

代码如下

#include<stdio.h>
int main()
{
	int n;
	
	while(scanf("%d", &n) != EOF){
		int x;
		int sum = 1;

		while(n--){
			scanf("%d", &x);
			if(x % 2 != 0)
				sum = sum * x;
		}
		printf("%d\n", sum);
	}
	return 0;
}

看起来就很舒服。写代码嘛,看起来舒服就行了(暗笑)。

全部评论

相关推荐

程序员花海:1.技能放最后,来面试默认你都会,技能没啥用 2.实习写的看起来没啥含金量,多读读部门文档,包装下 接LLM这个没含金量 也不要用重构这种 不会给实习生做的 3.抽奖这个还是Demo项目,实际在公司里面要考虑策略,满减,触发点,触发规则 库存 之类的,不是这个项目这么简单 4.教育背景提前,格式为 教育背景 实习 项目 技能 自我评价
简历被挂麻了,求建议
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务