openjudge水题 你五毛我一毛,咱就能一块了
来源:互联网 发布:淘宝助理无法一键适配 编辑:程序博客网 时间:2024/04/28 06:03
你五毛我五毛,咱就能一块了
- 总时间限制:
- 1000ms
- 内存限制:
- 65536kB
- 描述
“五毛一块”的游戏,很多人都玩过。现在我们玩一个游戏,有N个人参与,他们身上都带着各不相同的钱,给定一个magic数K,如果两两配对的总钱数等于K,那么这样的组合将会是幸运的。例如K = 8,9个人携带的钱为:{-1,6,5,3,4,2,9,0,8},幸运的组合有(-1,9),(0,8),(2,6),(3,5)。(钱为负数,则为欠钱)
- 输入
- 第1行:用空格隔开的2个数,K N,N为总人数。(2 <= N <= 50000,-10^9 <= K <= 10^9)
第2 - N + 1行:每个人携带的钱数。(-10^9 <= A[i] <= 10^9) - 输出
- 第1 - M行:输出M个幸运的组合,每行2个钱数,要求较小的钱数在前面,并且这M个组合对按照较小的钱数升序排列。
如果不存在幸运的组合则输出:No Solution。 - 样例输入
8 9-165342908
- 样例输出
-1 90 82 63 5
排序后,从两端向中间取数
#include<stdio.h>#include<iostream>#include<stdlib.h>using namespace std;int f(const void *a,const void *b){return (*(long long*)a-*(long long *)b);}int main(){long long k,a[50001];int n,i,j;long long begin,end;int flag = 0;scanf("%lld%d",&k,&n);for(i=0;i<n;i++){scanf("%lld",&a[i]);}qsort(a,n,sizeof(long long),f);begin = a[0];end = a[n-1];i=0;j=n-1;while(i<j){if(begin+end ==k){printf("%lld %lld\n",begin,end);flag = 1;i++;j--; }if(begin+end<k){i++;}if(begin+end>k){ j--;}begin=a[i];end=a[j]; }if(flag==0){printf("No Solution\n");}return 0; }
你五毛我五毛,咱就能一块了
- 总时间限制:
- 1000ms
- 内存限制:
- 65536kB
- 描述
“五毛一块”的游戏,很多人都玩过。现在我们玩一个游戏,有N个人参与,他们身上都带着各不相同的钱,给定一个magic数K,如果两两配对的总钱数等于K,那么这样的组合将会是幸运的。例如K = 8,9个人携带的钱为:{-1,6,5,3,4,2,9,0,8},幸运的组合有(-1,9),(0,8),(2,6),(3,5)。(钱为负数,则为欠钱)
- 输入
- 第1行:用空格隔开的2个数,K N,N为总人数。(2 <= N <= 50000,-10^9 <= K <= 10^9)
第2 - N + 1行:每个人携带的钱数。(-10^9 <= A[i] <= 10^9) - 输出
- 第1 - M行:输出M个幸运的组合,每行2个钱数,要求较小的钱数在前面,并且这M个组合对按照较小的钱数升序排列。
如果不存在幸运的组合则输出:No Solution。 - 样例输入
8 9-165342908
- 样例输出
-1 90 82 63 5
排序后,从两端向中间取数
#include<stdio.h>#include<iostream>#include<stdlib.h>using namespace std;int f(const void *a,const void *b){return (*(long long*)a-*(long long *)b);}int main(){long long k,a[50001];int n,i,j;long long begin,end;int flag = 0;scanf("%lld%d",&k,&n);for(i=0;i<n;i++){scanf("%lld",&a[i]);}qsort(a,n,sizeof(long long),f);begin = a[0];end = a[n-1];i=0;j=n-1;while(i<j){if(begin+end ==k){printf("%lld %lld\n",begin,end);flag = 1;i++;j--; }if(begin+end<k){i++;}if(begin+end>k){ j--;}begin=a[i];end=a[j]; }if(flag==0){printf("No Solution\n");}return 0; }
阅读全文
0 0
- openjudge水题 你五毛我一毛,咱就能一块了
- 抱歉了,我不做激光雷达这一块了!
- 吃一块猪肉的时候你吃了几分“费”
- 记录:【DIY】一块SSD拯救了我的笔记本
- 你错过了什么(一MM发给我)
- 你笑了笑,我摆一摆手,
- FreeMarker 那一眸我看懂了你
- 给我一块石头
- 找到了一块宝地
- 我,想你了...
- 我,想你了
- 你变成了我
- openjudge 我爱北大
- 两年又12个小时前,我砸了一块玻璃
- 一块神奇的树莓派电子板竟让我学会了Linux系统
- 一块神奇的树莓派电子板竟让我学会了Linux系统
- 一块神奇的树莓派电子板竟让我学会了Linux系统
- 一块神奇的树莓派电子板竟让我学会了Linux系统
- *二分图匹配
- C++/MFC-窗口置顶
- 【JavaSE系列-基础篇4】——面向对象编程概念之接口
- 七巧板用h5设置
- Oracle ref cursor使用
- openjudge水题 你五毛我一毛,咱就能一块了
- 2017.5.21 COCI2013/2014 Contest#6
- Gradle入门
- 第一页博客——从笔记到博客【附:丰富视频资源】
- 数据结构与算法(25)——拓扑排序
- 空域滤波
- Java中Arrays.sort排序源码分析
- BMP文件格式简介
- 欢迎使用CSDN-markdown编辑器