快速提升代码能力(12)

原创 2018年04月17日 18:25:36

从零起步看算法(第十二天 4.17)

题外话:昨晚想了一些其他的事,有些生活的残酷你注定要去旁观,而无法避免。伤害,或许是一种宿命,你能做的就是让悲痛成为财富而已。

//q13  HZF 爱斗牛

思路很简单的一道题,但注意的知识点还是有的。

1.对 unique(a,a+n)的深入认识,只是隐藏了原来的数组的相同的值,改变了顺序而已

https://blog.csdn.net/tomorrowtodie/article/details/51907471

2.对于情况少的判断,枚举法很有效。

3.对题意细节的理解,对牌类游戏题型的小积累,小主意。

贴代码:

 //q13  HZF 爱斗牛
#include<iostream>
#include<string>
#include<algorithm>
#include<cmath>
using namespace std;
bool is_three(int a[]){
	if((a[0]+a[1]+a[2])%10==0)return true;
	if((a[0]+a[1]+a[3])%10==0)return true;
	if((a[0]+a[1]+a[4])%10==0)return true;
	if((a[0]+a[2]+a[3])%10==0)return true;
	if((a[0]+a[2]+a[4])%10==0)return true;
	if((a[0]+a[3]+a[4])%10==0)return true;
	if((a[1]+a[2]+a[3])%10==0)return true;
	if((a[1]+a[2]+a[4])%10==0)return true;
    if((a[1]+a[3]+a[4])%10==0)return true;
	if((a[2]+a[3]+a[4])%10==0)return true;
	else return false;
}
int main(){
	int a[5]={0};
	int sum=0;
	for(int i=0;i<5;i++){
		cin>>a[i];
		if(a[i]==11)a[i]=10;
		if(a[i]==12)a[i]=10;
		if(a[i]==13)a[i]=10;
		sum+=a[i];
	}
	sort(a,a+5);
	int k=unique(a,a+5)-a;
	
	if(k<=2&&a[1]==a[2]&&a[2]==a[3]){
		cout<<"quadra bomb orz"<<endl;
		return 0; 
	}
	if(k<=2&&a[0]==a[2]&&a[2]==a[3]){
		cout<<"quadra bomb orz"<<endl;
		return 0; 
	}
	if(a[4]<5&&sum<=10){
		cout<<"penta calf"<<endl;
		return 0;
	}
	if(is_three(a)&&sum%10==0){
		cout<<"you can you up"<<endl;
		return 0;
	}
	if(is_three(a)){
		cout<<"too young too simple:calf "<<sum%10<<endl;
		return 0;
	}
	else
	cout<<"gg"<<endl;
	return 0;
}

如何提升你的能力?给年轻程序猿的几条建议

一转眼工作已有8年,前两天公司一位初入职场的同事希望我给一些建议与经验。我觉得这个话题很有价值,这里以个人的想法与经历写成此文,希望给年轻的开发者们一些启发。 我工作过的公司有4家,...
  • DSLZTX
  • DSLZTX
  • 2015-06-23 11:54:18
  • 2474

程序员自我修练-提高写代码的能力

首先让我们看一看刚入软件公司会出现的情况: 1. 你可能会常常发现,写了一段代码后,编译程序时是一大堆的出错 (原因:语法不熟) ──别担心,这是每个程序员必须经历的事,这时候你就需要更大...
  • jcw_275240222
  • jcw_275240222
  • 2016-06-11 17:44:56
  • 3622

快速提升代码能力(7)

从零起步看算法(第七天 4.12)//q9 交叉排序算是一道水题了。1.花点时间看一下样例,就可以理解题意了。2.本题唯一知识点,用sort()实现,数组的从大到小排序。很简单的操作https://b...
  • weixin_41637364
  • weixin_41637364
  • 2018-04-12 23:14:02
  • 3

快速提升代码能力(3)

从零起步看算法 (第三天 4.8)//q4 求最大子阵一.开始理解错了题目意思,简单的想成了行的一维,变换起始点的最大值。错误的路上,看到了一些不一样的风景。比如:1.起始点变化的总结,双重循环的初始...
  • weixin_41637364
  • weixin_41637364
  • 2018-04-08 21:03:07
  • 2

快速提升代码能力(5)

从零起步看算法(第五天 4.10)//q7 A*B本题重点:大数乘法1.一开始以为和大数加法相似,最后发现有很多不同,就当练习大数加法了。#include&amp;lt;stdio.h&amp;gt;...
  • weixin_41637364
  • weixin_41637364
  • 2018-04-10 23:53:23
  • 4

快速提升代码能力(9)

从零起步看算法(第九天 4.14)//q10  回文数1.明天有英语竞赛,今天的题做的有的浮躁。本以为是道水题,做下去发现要学的东西还是很多的先贴自己的代码,有几个问题很麻烦,首先是加过之后的进位,数...
  • weixin_41637364
  • weixin_41637364
  • 2018-04-14 23:17:00
  • 5

快速提升代码能力(1)

从零起步看算法(第一天  4.2)1.(a+b问题)主函数中:循环中,return 0的正确位置。数组形式输入,如何处理。//q1 a+b#include&amp;lt;iostream&amp;gt...
  • weixin_41637364
  • weixin_41637364
  • 2018-04-02 23:06:13
  • 5

快速提升代码能力(11)

从零起步看算法(第十一天  4.16)//q12 表达式求值1.首先想到的是先算乘法再算加法2.编程过程中了解到了一个函数isdigit()//头文件 #include&amp;lt;cctype&a...
  • weixin_41637364
  • weixin_41637364
  • 2018-04-16 22:43:32
  • 0

快速提升代码能力(8)

从零起步看算法(第八天 4.13)//q10 进制转换1.本题不知道为什么在DEv中可以通过,在网页一直ac不了2.本题的知识点 进制转换https://blog.csdn.net/wangjunch...
  • weixin_41637364
  • weixin_41637364
  • 2018-04-13 21:54:04
  • 13

快速提升代码能力(10)

从零起步看算法(第十天  4.15)看点评,总结模拟这一套路的使用进制转换,回文数,机器人的坐标为模拟情况的套路//q11 机器人坐标一开始没有读清楚题意,把问题想简单了。1.本题重点:坐标问题---...
  • weixin_41637364
  • weixin_41637364
  • 2018-04-15 23:15:09
  • 3
收藏助手
不良信息举报
您举报文章:快速提升代码能力(12)
举报原因:
原因补充:

(最多只允许输入30个字)