1028. 人口普查(20)
2016-02-20 21:12
417 查看
题目:http://www.patest.cn/contests/pat-b-practise/1028
1.代码—未解决堆栈溢出:
2.百度了一下,发现可以在for循环内直接处理数据,因为每次循环变量空间能够得到释放。
for循环内处理代码:http://blog.csdn.net/wyxdexyq/article/details/40371239
1.代码—未解决堆栈溢出:
#include<stdio.h> struct person { char name[10]; char a[20]; }; int main() { struct person p[10000]; int n,i,y_num,max_num,min_num; scanf("%d",&n); int bigger(char a[10],char b[10]); for (i=0;i<n;i++) scanf("%s %s",p[i].name,p[i].a); //确定最年长和最年轻下表 y_num = n; for (i=0;i<n;i++) { if (bigger("2014/09/07",p[i].a)&&bigger(p[i].a,"1814/09/05")) { max_num = i; min_num = i; break; } } for (i=0;i<n;i++) { if (bigger("2014/09/07",p[i].a)&&bigger(p[i].a,"1814/09/05")) { if (bigger(p[i].a,p[min_num].a)) min_num = i; if (bigger(p[max_num].a,p[i].a)) max_num = i; } else y_num--; } if (y_num>0) { printf("%d %s %s",y_num,p[max_num].name,p[min_num].name); } else printf("0"); return 0; } int bigger(char a[10],char b[10]) { int i; for (i=0;i<10;i++) { if (a[i]-b[i]>0) return 1; if (a[i]-b[i]<0) return 0; } return 0; }
2.百度了一下,发现可以在for循环内直接处理数据,因为每次循环变量空间能够得到释放。
for循环内处理代码:http://blog.csdn.net/wyxdexyq/article/details/40371239
相关文章推荐
- 线性布局 LinearLayout
- 启动模式
- JS中避免命名冲突
- 在Ubuntu中怎样以管理员身份打开文件或文件夹
- Linux网络epoll模型
- 函数参数传递引用形参
- iOS关于CoreAnimation动画知识总结
- Android获取年月日时分秒
- 动态注册receiver
- 2015年工作总结
- 华为手机打开logcat
- C#调用CMD程序
- leetcode(92) Reverse Linked List II
- iOS中给webView添加手势返回的问题
- hdu 5627 Clarke and MST【最大生成树】
- vooley(二)
- 用wget递归下载网站 离线浏览
- [linux]linux命令学习-netstat
- Vooley(一)
- JAVA环境搭建