今晚360编程第二题,请教

题目如下:



图片说明

我的代码如下:只过了40%,请教下还有什么情况未考虑

#实习#
全部评论
AC代码 #include<iostream> #include<vector> #include<algorithm> #include<cmath> using namespace std; int main() {     int t;     cin>>t;     while(t--)     {         vector<long long >color;         long long  ans=0,temp;         for(int i=0;i<3;++i)         {             cin>>temp;             color.push_back(temp);         }         sort(color.begin(),color.end());         ans+=color[0];         ans+=min((color[1]+color[2]-2*color[0])/3,color[1]);         cout<<ans<<endl;     }     return 0; }
点赞 回复 分享
发布于 2018-04-01 10:43
#include<iostream> #include <algorithm> using namespace std; //贪心法,先安排最多的 int main() { int n; cin >> n; int zushu[n]; for (int i = 0; i < n; ++i) { int result = 0; int col[3]; cin >> col[0] >> col[1] >> col[2]; //从小到大排好顺序 sort(col, col + 3); while ((col[0] + col[1] + col[2]) >= 3 && col[1] != 0 && col[0] >= 0) { if (col[2] >= 2) { col[2] -= 2; col[1] -= 1; result += 1; sort(col, col + 3); continue; } if (col[0] == 1 && col[1] == 1 && col[2] == 1) { result += 1; col[0] = 0; col[1] = 0; col[2] = 0; } } zushu[i] = result; } for (int m = 0; m < n; ++m) { cout << zushu[m] << endl; } }
点赞 回复 分享
发布于 2018-04-01 00:52
最多颜色的气球减去2,第二多的减去1,直到三个数字的和小于三,或者减完之后又负得,结果40%....
点赞 回复 分享
发布于 2018-03-31 22:30
是不是应该continue ,而不是break
点赞 回复 分享
发布于 2018-03-31 21:33
360一共几道编程题,难度如何
点赞 回复 分享
发布于 2018-04-01 08:44
如果较小的两个数的2被小于等于c就输出两个数的和否则输出3个数的和整除3 a了
点赞 回复 分享
发布于 2018-04-01 00:03
同40
点赞 回复 分享
发布于 2018-03-31 23:02
难道?res+=Math.min(tem1,Math.min(tem2,(tem1+tem2)/3));
点赞 回复 分享
发布于 2018-03-31 22:01
#include<stdio.h> #include<malloc.h> #define MAX_SIZE    100 void BubbleSort_high(int *array); int getcount(int r_count, int g_count, int b_count); int getcount(int r_count, int g_count, int b_count) {     int count = 0;          count += r_count;     r_count -= count;     g_count -= count;     b_count -= count;     if((b_count / 2) >= g_count) {         count += g_count;     }else {         count += (b_count / 2);     }     return count; } int main(void) {     int n;     int i,j;     int array[MAX_SIZE][3];     scanf("%d", &n);     for(i = 0; i < n; i++) {         scanf("%d%d%d", &array[i][0],&array[i][1],&array[i][2]);     } //先对得到的每组三个数据排序,第一步找到最小的min3Num  所有的元素减去最小的元素, count = count + min3Num //第二步最大的元素max除以2,和第二大的元素secondMax比较,若大于 count = count + secondMax //max/2 <= secondMax, 那么就让count = count + max / 2; //我还是不知道哪里有问题啊 心态炸了 好绝望啊 是我打扰贵公司了 打扰了     for(i = 0; i < n; i++) {         BubbleSort_high(array[i]);         printf("%d\n", getcount(array[i][0], array[i][1], array[i][2]));     }     return 0; } 想的是先找三个元素最小的 让三个元素都减去最小的,再让最大的除以二和次大的比较,
点赞 回复 分享
发布于 2018-03-31 21:56
我也试过了全部数减去最小数后,只剩下两个数嘛啊a[0],a[1] 然后不断重复以下过程     排序,a[0]-2,a[0]-1,累加次数 直到a[0]-2<=0或者a[0]-1<=0,但是这种超时了
点赞 回复 分享
发布于 2018-03-31 21:52
我也不知道为啥是40,后来改了后变为10,然后我就不懂了 我的思路是这样的比如40,30,50, 先排序得到50,40,30,然后所有数减去最小的数得到20,10,0,并且sum=30 判断如果(a[0]+a[1])/3>=1,则{       sum=sum+s; } 通过率40%,然后我发现我条件不够严谨,我就改了下 如果(a[0]+a[1])/3>=1,则{         如果a[0]<=2*a[1],则sum=sum+s;         否则sum=sum+a[1]; } 结果通过率只有10%。。。。。。更低了
点赞 回复 分享
发布于 2018-03-31 21:48
先从低到高排序,然后 int count=0;count=a[0];if(a[1]>=1&&a[2]>=2),count++;a[1]-1;a[2]-2;再排序,重复,直到a[1]==0。我觉得这样应该可以ac,但是中间那些重复的代码偷懒复制粘贴了几行代码,变量名字没改过来,直到结束都没发现问题。。
点赞 回复 分享
发布于 2018-03-31 21:40
0.3飘过,唉
点赞 回复 分享
发布于 2018-03-31 21:29
我只有10%
点赞 回复 分享
发布于 2018-03-31 21:28
break?
点赞 回复 分享
发布于 2018-03-31 21:27
1,1, 4?
点赞 回复 分享
发布于 2018-03-31 21:27
这和直接加起来除3求整有什么区别呢?
点赞 回复 分享
发布于 2018-03-31 21:26
long来存
点赞 回复 分享
发布于 2018-03-31 21:25

相关推荐

行云流水1971:这份实习简历的优化建议: 结构清晰化:拆分 “校园经历”“实习经历” 板块(当前内容混杂),按 “实习→校园→技能” 逻辑排版,求职意向明确为具体岗位(如 “市场 / 运营实习生”)。 经历具象化:现有描述偏流程,需补充 “动作 + 数据”,比如校园活动 “负责宣传” 可加 “运营公众号发布 5 篇推文,阅读量超 2000+,带动 300 + 人参与”;实习内容补充 “协助完成 XX 任务,效率提升 X%”。 岗位匹配度:锚定目标岗位能力,比如申请运营岗,突出 “内容编辑、活动执行” 相关动作;申请市场岗,强化 “资源对接、数据统计” 细节。 信息精简:删减冗余表述(如重复的 “负责”),用短句分点,比如 “策划校园招聘会:联系 10 + 企业,组织 200 + 学生参与,到场率达 85%”。 技能落地:将 “Office、PS” 绑定经历,比如 “用 Excel 整理活动数据,输出 3 份分析表;用 PS 设计 2 张活动海报”,避免技能单独罗列。 优化后需强化 “经历 - 能力 - 岗位需求” 的关联,让实习 / 校园经历的价值更直观。 若需要进一步优化服务,私信
实习,投递多份简历没人回...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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