2015年第六届省赛
蓝桥杯2015年第六届省赛
hero_th
当打之年,感恩一切!
展开
-
蓝桥杯2015年第六届C/C++B组国赛第一题-积分之迷
枚举#include<iostream>using namespace std;int main(){ for(int i = 1;i<100;i++){ for(int j = 1;j<40;j++){ for(int k = 1;k<300;k++){ if(3*i+7*j+k == 315 && 4*i+10*j+k==420){ cout<<i+j+k<<endl; } } .原创 2022-02-23 11:04:38 · 367 阅读 · 0 评论 -
蓝桥杯2015年第六届javaB组省赛第一题-三角形面积
Idea建立坐标系,规定每个点的坐标,然后代入三角形面积 海伦公式即可double p = (a + b + c) / 2double area = sqrt(p*(p-a)(p-b)(p-b))Code#include<iostream>#include<cmath> using namespace std;int main(){ int x1,y1,x2,y2,x3,y3; cin>>x1>>y1>>x2>.原创 2022-02-21 20:15:13 · 124 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++省赛C组第九题-打印大X
题目描述源代码思路:遇到这种题:教你们一个万能的思路第一步:先打印上半部分,第二步:打印下半部分(像这种题目,已经确定了行数为奇数,我们就可以直接打印中间一行)#include<iostream>using namespace std;int main(){ int m,n; cin>>m>>n; for(int i=1;i<=n/2;i++) //上半部分 { for(int j=1;j<=m+n-1;j++)原创 2021-04-04 17:09:20 · 3900 阅读 · 5 评论 -
蓝桥杯2015年第六届C/C++省赛C组第二题-立方尾不变
题目描述源代码#include <iostream>using namespace std;int main(){ int ans = 0; int s; for(long long i=1;i<10000;i++) { if(i<10) s = 10; else if(i<100) s = 100; else if(i<1000) s = 1000; else if(i<10000)原创 2021-04-04 16:17:37 · 164 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++省赛C组第一题-隔行变色
题目描述源代码#include<iostream>using namespace std;int main(){ int ans=0; for(int i=21;i<=50;i++) if(i%2!=0) ans++; cout<<ans; return 0;}正确答案15原创 2021-04-04 15:45:08 · 127 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++B组省赛第八题-移动距离
题目描述X星球居民小区的楼房全是一样的,并且按矩阵样式排列。其楼房的编号为1,2,3… 当排满一行时,从下一行相邻的楼往反方向排号。 比如:当小区排号宽度为6时,开始情形如下:1 2 3 4 5 6 12 11 10 9 8 713 14 15 … 我们的问题是:已知了两个楼号m和n,需要求出它们之间的最短移动距离(不能斜线方向移动) 输入为3个整数w m n,空格分开,都在1到10000范围内 w为排号宽度,m,n为待计算的楼号。 要求输出一个整数,表示m n 两楼间最短移原创 2021-04-03 15:38:54 · 208 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++省赛B组第七题-牌型种数
题目描述小明被劫持到X赌城,被迫与其他3人玩牌。 一副扑克牌(去掉大小王牌,共52张),均匀发给4个人,每个人13张。 这时,小明脑子里突然冒出一个问题: 如果不考虑花色,只考虑点数,也不考虑自己得到的牌的先后顺序,自己手里能拿到的初始牌型组合一共有多少种呢? 请填写该整数,不要填写任何多余的内容或说明文字。源代码思路:多刷题!多刷题!多刷题!像这种题目如果三遍读完还看不出来是dfs的话,就赶紧多刷刷题!!!题海战术!(yyds)#include<iostream>us原创 2021-04-03 14:16:07 · 196 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++B组第六题-加法变乘法
题目描述我们都知道:1+2+3+ … + 49 = 1225 现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015 比如: 1+2+3+…+10 * 11+12+…+27*28+29+…+49 = 2015 就是符合要求的答案。 请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交(对于示例,就是提交10)。 注意:需要你提交的是一个整数,不要填写任何多余的内容。源代码思路:对于这道我们一般人优先想到的解法自然是,for循环直接嵌套遍历,尝试找到乘号的两个位置,然后原创 2021-04-03 11:25:31 · 210 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++省赛B组第三题-三羊献瑞
题目描述观察下面的加法算式:祥 瑞 生 辉 +三 羊 献 瑞 ------------------- 三 羊 生 瑞 气(如果有对齐问题,可以参看【图1.jpg】) 其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。 请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。源代码思路:这道题可以直接暴力解法,直接构建多层for循环,然后进行if语句判断,这种方法思路简单,代码量大还有一种更为简便的解法就是利用C++的库函数next_permu原创 2021-04-03 10:23:30 · 205 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++省赛B组第二题-星系炸弹
题目描述在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。 每个炸弹都可以设定多少天之后爆炸。 比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。 有一个贝塔炸弹,2014年11月9日放置,定时为1000天,请你计算它爆炸的准确日期。 请填写该日期,格式为 yyyy-mm-dd 即4位年份2位月份2位日期。比如:2015-02-19 请严格按照格式书写。不能出现其它文字或符号。方法一:win10计算器直接点击左上角的图标,选择日期计算模块原创 2021-04-03 09:55:35 · 323 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++省赛B组第一题-奖券数目
题目描述有些人很迷信数字,比如带“4”的数字,认为和“死”谐音,就觉得不吉利。 虽然这些说法纯属无稽之谈,但有时还要迎合大众的需求。某抽奖活动的奖券号码是5位数(10000-99999),要求其中不要出现带“4”的号码,主办单位请你计算一下,如果任何两张奖券不重号,最多可发出奖券多少张。 请提交该数字(一个整数),不要写任何多余的内容或说明性文字。源代码思路:直接循环遍历10000-99999这些数,然后进行逐位判断是否含有4即可#include<iostream>using原创 2021-04-03 09:40:04 · 140 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++省赛A组第九题-垒骰子
题目描述源代码#include <iostream>#include <cstring>using namespace std;#define MOD 1000000007bool conflict[7][7] ;int f[7][2];int op[7]={0,4,5,6,1,2,3};int main() { memset(conflict,1, sizeof(conflict)); int n,m; cin>>n>原创 2021-04-06 20:04:19 · 201 阅读 · 1 评论 -
蓝桥杯2015年第六届C/C++省赛A组第八题-饮料换购
题目描述源代码#include<iostream>using namespace std;int main(){ int n; cin>>n; int ans=0; //定义换购得到的数量 int temp=n; while(temp>2) { temp-=3; ans++; temp+=1; } cout<<n+ans; return 0;}原创 2021-04-04 13:00:31 · 171 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++省赛A组第七题-手链样式
题目描述源代码这道题在第六届只在C组出现了,java组没有因为C++有stl库函数next_permutation可以非常方便的帮助解题,要不然就非常的麻烦思路:这道题非常有限制的一点就是:手链可以随意转动或翻转这就导致像我这种理解能力不强的人,要正确的理解题意感觉非常困难首先我们构建一个string类,将珊瑚用 AAABBBBCCCCC 替换存放在string中首先我们理解第一个词,转动-----手链是一个环,所以说呢,我们先放第一个简单的情况进行类比第一种情况就是 AAAB原创 2021-04-04 11:54:08 · 337 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++省赛A组第三题-奇妙的数字
题目描述源代码#include<iostream>#include<cstring>using namespace std;int a[10];bool isHave(int i,int j){ memset(a,0,sizeof(a)); while(i) { a[i%10]++; i/=10; } while(j) { a[j%10]++; j/=10; } for(int j=0;j<10;j++) { if(a[j]原创 2021-04-04 09:44:42 · 90 阅读 · 0 评论 -
蓝桥杯2015年第六届C/C++省赛A组第一题-方程整数解
题目描述源代码#include<iostream>using namespace std;int main(){ for(int i=0;i<100;i++) { for(int j=0;j<100;j++) { for(int k=0;k<100;k++) { if(i*i+j*j+k*k == 1000){ cout<<i<<" "<<j<<" "<<k<原创 2021-04-04 09:19:55 · 95 阅读 · 0 评论