101097B-思维,vector的resize和assign
来源:互联网 发布:js 数组增加键 编辑:程序博客网 时间:2024/05/21 06:25
too young too naive。
开始做过一道判定三角形的水题,直接排序判断就行,但是这个有颜色限制。没有考虑到。。
方法1
假设一个盒子,保证这个盒子里有三种不同颜色的棍子,
如果加的一个棍子中和盒子里有重复的,就把盒子里的替换掉。
如果没有的话,就找辣两个最大的和这个比。
注意:后续的添加及处理都保证0位和1位是俩大的。0最大。
第二个代码和第一个很像。
对于vector的理解。
如果没有定义长度,在一开始就弄3是不对的。resize()可以给vector配置空间。
但是assign更好,因为assign还可以赋初值
。q巨巨现场写过resize,发现初始竟然不是0,并且从大变小是无效的。
所以还是assign好点。
assign(m,n),m是大小,n是初始值。
include
include
include
define P pair
#include <bits/stdc++.h>/*高中巨佬的代码, 不得不说写的太好了。*/#define P pair<int,int>#define MP(x,y) make_pair(x,y)using namespace std;inline void read(int&a){ char c; while(!(((c=getchar())>='0')&&(c<='9')));a=c-'0'; while(((c=getchar())>='0')&&(c<='9'))(a*=10)+=c-'0';}vector<pair<int,int> >q;int cmp1(P a,P b){ return a.first<b.first;}int main(){ freopen("sticks.in","r",stdin);freopen("sticks.out","w",stdout); int m; int k,l; read(m); for(int i=1;i<=m;i++) { read(k); for(k;k>=1;k--,q.push_back(MP(l,i))) read(l); } sort(q.begin(),q.end(),cmp1); P fir=MP(0,0); P sec=MP(0,0); P thi=MP(0,0); for(int i=0;i<q.size();i++) { if(q[i].second==fir.second) { if(thi.first+sec.first>q[i].first) { printf("%d %d %d %d %d %d\n",thi.second,thi.first,sec.second,sec.first,q[i].second,q[i].first); return 0; } fir.first=q[i].first;fir.second=q[i].second; } else if(q[i].second==sec.second) { if(fir.first+thi.first>q[i].first) { printf("%d %d %d %d %d %d\n",fir.second,fir.first,thi.second,thi.first,q[i].second,q[i].first); return 0; } sec=fir;fir=q[i]; } else { if(fir.first+sec.first>q[i].first) { printf("%d %d %d %d %d %d\n",fir.second,fir.first,sec.second,sec.first,q[i].second,q[i].first); return 0; } thi=sec;sec=fir;fir=q[i]; } } puts("NIE"); return 0;}
0 0
- 101097B-思维,vector的resize和assign
- 关于vector中的assign和resize函数
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- 1037. 在霍格沃茨找零钱
- GCD之信号量机制二
- GCD之信号量机制一
- Ubuntu 14.04下怎么使用chroot创建另外一个系统
- Coursera ML笔记 -----week8-2 数据降维
- 101097B-思维,vector的resize和assign
- C#往线程里传递参数的方法小结
- 牛客网 有趣的排序
- GCD之线程挂起与恢复
- android 圆形头像 自定义ImageView
- zzuli 2133: 密室逃脱(2017轻工业校赛 )
- Centos7 subversion 搭建
- 慧荣科技亮相2017纽伦堡国际嵌入式应用展览会
- 笔记二--Android的编译