CodeForces 222D - Olympiad
2016-07-17 11:26
288 查看
第一行给出两个个数字k和n,第二三行分别有k个数字,求将第二、三行之间的数字相互组合,求最多有多少个组合的和不小于n
纯粹暴力
纯粹暴力
#include <iostream> #include <cstdio> #include <algorithm> #include <vector> using namespace std; int n,x; int s1[100005],s2[100005]; int main() { scanf("%d%d",&n,&x); for(int i=0;i<n;i++) scanf("%d",&s1[i]); for(int i=0;i<n;i++) scanf("%d",&s2[i]); sort(s1,s1+n); sort(s2,s2+n); int i,j=0; for(i=n-1;i>=0;i--) { while(x>s1[i]+s2[j]) { j++; if(j>=n) break; } if(j>=n) break; j++; } printf("1 %d\n",n-i-1); }
相关文章推荐
- 快速排序/二分插入排序的swift以及Java实现
- 46. Permutations
- 微信服务器ip获取
- Collection和Arrays添加元素的方法的几点注意问题
- 25 二叉树中和为某一值的路径
- 20.python笔记之装饰器
- java .net compartion
- 编写主引导扇区
- json数据拼接和foreach参数问题
- GUI笔记
- Java Socket网络编程的经典例子(转)
- C++ 对象的内存布局(上)
- C++ 对象的内存布局(上)
- javascript中的错误处理机制
- mysqldump的流程
- Android ViewStub详解
- 调试常用打印方法
- runtime运用实例
- Android ListView 图片异步加载和图片内存缓存
- Codeforces Beta Round #95 (Div. 2) -- E. Yet Another Task with Queens(STL)