当前位置: 首页 > news >正文

学校资源网站建设目标网络上做广告最好怎么做

学校资源网站建设目标,网络上做广告最好怎么做,广州网站建设优化方案,wordpress 4.7.3主题文章目录写在前面一、找最小数题目描述解题报告1、大体思路2、代码详解二、求列名题目描述解题报告1、大体思路2、代码详解三、求日期数题目描述解题报告1、大体思路2、代码详解四、取数题目描述解题报告1、大体思路2、代码详解五、最大连通分块题目描述解题报告1、大体思路2、… 文章目录写在前面一、找最小数题目描述解题报告1、大体思路2、代码详解二、求列名题目描述解题报告1、大体思路2、代码详解三、求日期数题目描述解题报告1、大体思路2、代码详解四、取数题目描述解题报告1、大体思路2、代码详解五、最大连通分块题目描述解题报告1、大体思路2、代码详解六、n天后周几题目描述解题报告1、大体思路2、代码详解七、信号塔信号覆盖点数题目描述解题报告1、大体思路2、代码详解八、清理水草题目描述解题报告1、大体思路2、代码详解九、滑行距离题目描述解题报告1、大体思路2、代码详解十、求最小值题目描述解题报告1、大体思路2、代码详解写在前面 注以下题解不一定正确仅供参考。故只给出大体思路及代码如有错误还请大佬多多指正。 一、找最小数 题目描述 请找到一个大于 2022 的最小数这个数转换成十六进制之后所有的数位不含前导 0都为字母A 到 F。 请将这个数的十进制形式作为答案提交。 解题报告 1、大体思路 从2022开始向后枚举每次都将枚举到的数转化为16进制然后判断每位数字是否满足条件。 2、代码详解 #include iostream using namespace std; bool check(int x){while(x){int rx%16;if(r0r9){return false;}x/16;}return true; } int main(){for(int i2022;;i){if(check(i)){couti;break;}} return 0; }参考答案 2730二、求列名 题目描述 在 Excel 中列的名称使用英文字母的组合。前 26 列用一个字母依次为 A 到 Z接下来 26*26 列使用两个字母的组合依次为 AA 到 ZZ。 请问 第 2022 列的名称 是什么 解题报告 1、大体思路 比赛时将这道题理解错了以为是最多从A~ZZ超过的从头再循环。 赛后参考其他大佬的题解发现是走到ZZ之后是每三位是一列AAA、AAB、…走完三位就是四位依次排。错误代码就不写在下面了下面代码为纠正思路后的代码。 将A~Z映射成1 ~26也就是一个“26进制的数”注意这个进制比较特殊不是从0 ~25而且是满27进1这样就将该问题转换成了一个进制转化问题十进制2022对应该进制表示为多少。 2、代码详解 #include iostream using namespace std; int main(){int n;cinn;while(n){coutn%26 ;n/26;} return 0; }参考答案 上述程序输出是 20 25 2 因为先输出的余数是低位所以对应的答案应该是 2 25 20 所对应的字母 即BYT三、求日期数 题目描述 对于一个日期我们可以计算出年份的各个数位上的数字之和也可以分别计算月和日的各位数字之和。请问从 1900 年 1 月 1 日至 9999 年 12 月 31 日总共有多少天年份的数位数字之和等于月的数位数字之和加日的数位数字之和。例如2022年11月13日满足要求因为 2022(11)(13) 。 请提交满足条件的日期的总数量。 解题报告 1、大体思路 暴力枚举按题目要求进行判断注意闰年条件能被4整除不能被100整除或者能够被400整除的年份。 2、代码详解 #include iostream using namespace std; int ans; int pmonth[]{31,28,31,30,31,30,31,31,30,31,30,31}; int rmonth[]{31,29,31,30,31,30,31,31,30,31,30,31}; int ryear(int n){if(n%100!0n%40||n%4000){return true;}return false; } int num_sum(int x){int sum0;while(x){sumx%10;x/10;}return sum; } int main(){for(int i1900;i9999;i){int targetnum_sum(i);bool flagfalse;if(ryear(i)) flagtrue;for(int j1;j12;j){int sum0;sumnum_sum(j);if(flag){for(int w1;wrmonth[j-1];w){sumnum_sum(w);if(sumtarget){ans;}sum-num_sum(w);}}else{for(int w1;wpmonth[j-1];w){sumnum_sum(w);if(sumtarget){ans;}sum-num_sum(w);} }}}coutans;return 0; }参考答案 70910四、取数 题目描述 小蓝有 30 个数分别为99, 22, 51, 63, 72, 61, 20, 88, 40, 21, 63, 30, 11, 18, 99, 12, 93, 16, 7, 53, 64, 9, 28, 84, 34, 96, 52, 82, 51, 77 。 小蓝可以在这些数中取出两个序号不同的数共有 30*29/2435 种取法。 请问这 435 种取法中有多少种取法取出的两个数的乘积大于等于 2022 。 解题报告 1、大体思路 组合问题选1号和2号、2号和1号是同一种选法所以每次选第二个数都从第一个选到的数的后面选就可以避免重复。 2、代码详解 #include iostream using namespace std; int num[]{99, 22, 51, 63, 72, 61, 20, 88, 40, 21, 63, 30, 11, 18, 99, 12, 93, 16, 7, 53, 64, 9, 28, 84, 34, 96, 52, 82, 51, 77}; int ans; int main(){for(int i0;i30;i){for(int ji1;j30;j){if(num[i]*num[j]2022) ans;}}coutans;return 0; }参考答案 189五、最大连通分块 题目描述 小蓝有一个 30 行 60 列的数字矩阵矩阵中的每个数都是 0 或 1 。 如果从一个标为 1 的位置可以通过上下左右走到另一个标为 1 的位置则称两个位置连通。与某一个标为 1 的位置连通的所有位置包括自己组成一个连通分块。 请问矩阵中 最大的连通分块有多大 110010000011111110101001001001101010111011011011101001111110 010000000001010001101100000010010110001111100010101100011110 001011101000100011111111111010000010010101010111001000010100 101100001101011101101011011001000110111111010000000110110000 010101100100010000111000100111100110001110111101010011001011 010011011010011110111101111001001001010111110001101000100011 101001011000110100001101011000000110110110100100110111101011 101111000000101000111001100010110000100110001001000101011001 001110111010001011110000001111100001010101001110011010101110 001010101000110001011111001010111111100110000011011111101010 011111100011001110100101001011110011000101011000100111001011 011010001101011110011011111010111110010100101000110111010110 001110000111100100101110001011101010001100010111110111011011 111100001000001100010110101100111001001111100100110000001101 001110010000000111011110000011000010101000111000000110101101 100100011101011111001101001010011111110010111101000010000111 110010100110101100001101111101010011000110101100000110001010 110101101100001110000100010001001010100010110100100001000011 100100000100001101010101001101000101101000000101111110001010 101101011010101000111110110000110100000010011111111100110010 101111000100000100011000010001011111001010010001010110001010 001010001110101010000100010011101001010101101101010111100101 001111110000101100010111111100000100101010000001011101100001 101011110010000010010110000100001010011111100011011000110010 011110010100011101100101111101000001011100001011010001110011 000101000101000010010010110111000010101111001101100110011100 100011100110011111000110011001111100001110110111001001000111 111011000110001000110111011001011110010010010110101000011111 011110011110110110011011001011010000100100101010110000010011 010011110011100101010101111010001001001111101111101110011101解题报告 1、大体思路 思路是深搜但是本题比赛时调了很久不确定答案是否正确参考即可。 枚举每个位置如果该位置是1就深搜查找每次枚举它上下左右的数直到到达的数上下左右都为0记录答案并回溯个人感觉这道题和后面第九题很像。 2、代码详解 #include iostream #include algorithm using namespace std; int dx[]{-1,1,0,0},dy[]{0,0,-1,1}; char g[35][65]; bool st[35][65]; int sum1; int res1; int ans1; bool check(int x,int y){for(int i0;i4;i){int axdx[i],bydy[i];if(!(a0a30b0b60)) continue;if(a0a30b0b60g[a][b]1!st[a][b]) return false; }return true; } void dfs(int x,int y){if(check(x,y)){resmax(res,sum);return ;}for(int i0;i4;i){int axdx[i],bydy[i];if(a0a30b0b60g[a][b]1!st[a][b]){sum;st[a][b]true;dfs(a,b);st[a][b]false;sum--;} } } int main(){for(int i0;i30;i){for(int j0;j60;j){cing[i][j];}}for(int i0;i30;i){for(int j0;j60;j){res1;if(g[i][j]1){dfs(i,j);ansmax(ans,res);}}}coutans;return 0; }参考答案 93六、n天后周几 题目描述 问题描述 给定一天是一周中的哪天请问 n 天后是一周中的哪天 输入格式 输入第一行包含一个整数 w表示给定的天是一周中的哪天w 为 1 到 6 分别表示周一到周六w 为 7 表示周日。 第二行包含一个整数 n。 输出格式 输出一行包含一个整数表示 n 天后是一周中的哪天1 到 6 分别表示周一到周六7 表示周日。 样例输入 6 10样例输出 2评测用例规模与约定 对于所有评测用例1 n 1000000。 解题报告 1、大体思路 如果当前是周w算上该周天数则就相当于总共过了nw天问现在是周几所以直接取模7即可。 2、代码详解 #include iostream using namespace std; int w; int n; int main(){cinwn;cout(nw)%7;return 0; }七、信号塔信号覆盖点数 题目描述 问题描述 小蓝负责一块区域的信号塔安装整块区域是一个长方形区域建立坐标轴后西南角坐标为 (0, 0) 东南角坐标为 (W, 0) 西北角坐标为 (0, H) 东北角坐标为 (W, H)。其中 W, H 都是整数。 他在 n 个位置设置了信号塔每个信号塔可以覆盖以自己为圆心半径为 R 的圆形包括边缘。 为了对信号覆盖的情况进行检查小蓝打算在区域内的所有横纵坐标为整数的点进行测试检查信号状态。 其中横坐标范围为 0 到 W纵坐标范围为 0 到 H总共测试 (W1) * (H1) 个点。 给定信号塔的位置请问 这 (W1)*(H1) 个点中有多少个点被信号覆盖。 输入格式 输入第一行包含四个整数 W, H, n, R相邻整数之间使用一个空格分隔。 接下来 n 行每行包含两个整数 x, y表示一个信号塔的坐标。信号塔可能重合表示两个信号发射器装在了同一个位置。 输出格式 输出一行包含一个整数表示答案。 评测用例规模与约定 对于所有评测用例1 n 100每个单词的长度不超过 100。 样例输入 10 10 2 5 0 0 7 0样例输出 57解题报告 1、大体思路 模拟利用两点间距离公式距离小于等于半径满足题意将该位置标记即可统计标记位置的个数。 2、代码详解 #include iostream #include cmath using namespace std; const int N110; bool g[N][N]; int W,H,n,R; int ans; int main(){cinWHnR;while(n--){int x,y;cinxy;for(int i0;iW;i){for(int j0;jH;j){if(abs(x-i)*abs(x-i)abs(y-j)*abs(y-j)R*R) g[i][j]true;}}}for(int i0;iW;i){for(int j0;jH;j){if(g[i][j]) ans;}}coutans;return 0; }八、清理水草 题目描述 问题描述 小蓝有一个 n * m 大小的矩形水域小蓝将这个水域划分为 n 行 m 列行数从 1 到 n 标号列数从 1 到 m 标号。每行和每列的宽度都是单位 1 。 现在这个水域长满了水草小蓝要清理水草。 每次小蓝可以清理一块矩形的区域从第 r1 行含到第 r2 行含的第 c1 列含到 c2 列含。 经过一段时间清理后请问 还有多少地方没有被清理过。 输入格式 输入第一行包含两个整数 n, m用一个空格分隔。 第二行包含一个整数 t 表示清理的次数。 接下来 t 行每行四个整数 r1, c1, r2, c2相邻整数之间用一个空格分隔表示一次清理。请注意输入的顺序。 输出格式 输出一行包含一个整数表示没有被清理过的面积。 评测用例规模与约定 对于所有评测用例1 r1 r2 n 100, 1 c1 c2 m 100, 0 t 100。 样例输入 2 3 2 1 1 1 3 1 2 2 2样例输出 2样例输入 30 20 2 5 5 10 15 6 7 15 9样例输出 519解题报告 1、大体思路 乍一看像二维差分但看了下数据范围好像可以暴力过直接暴力模拟了。 2、代码详解 #include iostream using namespace std; const int N110; bool g[N][N]; int n,m; int ans; int main(){cinnm;int t;cint;while(t--){int r1,c1,r2,c2;cinr1c1r2c2;for(int ir1;ir2;i){for(int jc1;jc2;j){g[i][j]true;}}}for(int i1;in;i){for(int j1;jm;j){if(!g[i][j]) ans;}}coutans;return 0; }九、滑行距离 题目描述 问题描述 小蓝准备在一个空旷的场地里面滑行这个场地的高度不一小蓝用一个 n 行 m 列的矩阵来表示场地矩阵中的数值表示场地的高度。 如果小蓝在某个位置而他上、下、左、右中有一个位置的高度 严格低于当前的高度小蓝就可以滑过去滑动距离为 1 。 如果小蓝在某个位置而他上、下、左、右中所有位置的高度都大于等于当前的高度小蓝的滑行就结束了。 小蓝不能滑出矩阵所表示的场地。 小蓝可以任意选择一个位置开始滑行请问 小蓝最多能滑行多远距离。 输入格式 输入第一行包含两个整数 n, m用一个空格分隔。 接下来 n 行每行包含 m 个整数相邻整数之间用一个空格分隔依次表示每个位置的高度。 输出格式 输出一行包含一个整数表示答案。 评测用例规模与约定 对于 30% 评测用例1 n 201 m 200 高度 100。 对于所有评测用例1 n 1001 m 1000 高度 10000。 解题报告 1、大体思路 个人感觉和第五题很类似思路是深搜枚举每个点然后如果满足条件就继续深搜到达某一个点时不满足条件了就收获答案并回溯。 不确定是否正确样例可以过。 2、代码详解 #include iostream #include algorithm using namespace std; const int N110; int dx[]{1,-1,0,0},dy[]{0,0,1,-1}; int g[N][N]; bool st[N][N]; int n,m; int sum1; int ans1; int res1; bool check(int x,int y){ for(int i0;i4;i){int axdx[i],bydy[i];if(!(a0anb0bm)) continue;if(a0anb0bmg[a][b]g[x][y]!st[a][b]) return false;}return true; } void dfs(int x,int y){if(check(x,y)){resmax(res,sum);return ;}for(int i0;i4;i){int axdx[i],bydy[i];if(a0anb0bmg[a][b]g[x][y]!st[a][b]){sum;st[a][b]true;dfs(a,b);st[a][b]false;sum--;}} } int main(){cinnm;for(int i0;in;i){for(int j0;jm;j){cing[i][j];}}for(int i0;in;i){for(int j0;jm;j){res1;dfs(i,j);ansmax(ans,res);}}coutans;return 0; }十、求最小值 题目描述 问题描述 小蓝有一个序列 a[1], a[2], …, a[n]。 给定一个正整数 k请问对于每一个 1 到 n 之间的序号 ia[i-k], a[i-k1], …, a[ik] 这 2k1 个数中的 最小值 是多少当某个下标超过 1 到 n 的范围时数不存在求最小值时只取存在的那些值。 输入格式 输入的第一行包含一整数 n。 第二行包含 n 个整数分别表示 a[1], a[2], …, a[n]。 第三行包含一个整数 k 。 输出格式 输出一行包含 n 个整数分别表示对于每个序号求得的最小值。 评测用例规模与约定 对于 30% 的评测用例1 n 10001 a[i] 1000。 对于 50% 的评测用例1 n 100001 a[i] 10000。 对于所有评测用例1 n 10000001 a[i] 1000000。 解题报告 1、大体思路 每次将这2k1个数取出来然后从小到大排序输出第一个数即可。 数据应该最多过一半比赛时没有想到优化方法果断结束了赛后了解到好像需要使用线段树没有学过。 2、代码详解 #include iostream #include cstring #include algorithm using namespace std; const int N1000010; int a[N],tmp[N]; int n; int k; int main(){cinn;for(int i1;in;i){cina[i];}cink;for(int i1;in;i){memset(tmp,0,sizeof tmp);int cnt0;int l,r;lmax(1,i-k);rmin(n,ik);for(int jl;jr;j){tmp[cnt]a[j];}sort(tmp,tmpcnt);couttmp[0] ;}return 0; }
http://www.hkea.cn/news/14503009/

相关文章:

  • wordpress网站微信登录学校能建设网站吗
  • 专业集团门户网站建设服务商做网站还需要服务器吗
  • 网站建设中广告法绝对化用语整理办公室设计公司
  • 网页设计教学网站易语言做网站客户端
  • 昆明百度网站建设易思企业网站管理系统
  • 网站后台账号密码破解wordpress二级域名
  • 网站建设实训建议域名查询
  • 12306网站建设 实际什么是网站开发公司电话
  • 局网站建设申请网站建设 宁夏
  • 网站建设要做哪些网站托管维护合同
  • 做网站需要多钱专业图片在线制作网站
  • 什么兼职网站可以做视频剪辑vps做vpn svn和网站
  • 建筑工程素材资源网站文安做网站
  • 网站营售沧州外贸公司
  • 成都天空在线团购网站如何优化
  • 建设服装网站目的和作用做3d图的网站有哪些软件下载
  • 做货代哪个网站上好找客户php网站后台密码忘记了
  • 做外贸自己的公司网站wordpress插件外贸
  • 网站排名优化学习网站建设的成本有哪些内容
  • 个人网站备案名字重要吗多配色创意metro风格企业网站织梦模板整
  • 威海相亲网站网站dns服务
  • 长治网站建设龙采科技技术支持网站建设近义词
  • 汉口网站推广优化代码审计wordpress
  • led灯什么网站做推广好网站代备案流程
  • 武进网站建设价位网站的空间是什么意思
  • 网站开发免费视频教程十大看免费行情的软件下载
  • 福州网站制作有限公司app开发商城
  • 泗阳做网站商务软文写作300字
  • 可以自己做视频网站吗国内主机wordpress
  • 怎样在微信公众号里做微网站浙江网站建设费用