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

网站制作的评价网站建设项目报告总结报告

网站制作的评价,网站建设项目报告总结报告,海南省建设局网站搜索,成都不能去的建筑设计公司文章目录 1. ASC2. 空间3. 卡片4. 相乘5. 路径6.时间显示7.最少砝码8. 杨辉三角形9. 左孩子右兄弟 第12届蓝桥杯省赛#xff0c;C/C C组真题#xff0c;第10题不是很清楚#xff0c;题解不敢乱放#x1f601;#x1f601;#x1f601; 1. ASC 额。。。。 #include i… 文章目录 1. ASC2. 空间3. 卡片4. 相乘5. 路径6.时间显示7.最少砝码8. 杨辉三角形9. 左孩子右兄弟 第12届蓝桥杯省赛C/C C组真题第10题不是很清楚题解不敢乱放 1. ASC 额。。。。 #include iostream using namespace std; int main() {printf(%d\n,L);return 0; }2. 空间 甲骨文一切的开始好吧。 – 一个字节等于8个比特位1B 8bit;1KB 1024B1MB 1024KB1GB 1024MB1 TB 1024GB…打住吧够用了。 在这道题中告诉我们256MB我们知道32位在C/C中一个int是正好4个字节也就是32个bit。 所以直接256 * 1024 * 1024 / 4就是答案。 当然也可以全部换算成bit位来算256 * 1024 * 1024 * 8 / 32但要注意开long long。 #include iostream using namespace std;int main() {//1个字节 8个bit位//1B 8个bit。//1KB 1024B。//1MB 1024KB//1GB 1024MB;// int 4个字节, 32位printf(%d\n,256 * 1024 * 1024 / 4);//printf(%lld\n,(long long)256 * 1024 * 1024 * 8 / 32);return 0; }3. 卡片 题目要求从给定的0~9 共2021张卡片然后问我们最多能拼到哪里 比如例子中1~9各有三张。 1 ~ 10 已经浪费了两个1 11还需要两个1所以拼不成答案就是10. 填空题不卡时间也不用在意时间复杂度了只要你程序没写死循环你可以永远相信computer的速度暴力就好了。 #include iostream using namespace std;int h[10];int main() {for (int i 0; i 9; i)h[i] 2021;for (int i 1; true; i){int t i;while (t){int dig t % 10;if (!h[dig]) //卡片用完了 h[dig] 0{printf(%d\n, i - 1); //注意是返回前一个构造好的不是当前的return 0;}h[dig]--; //减去这一位的次数。t / 10;}}return 0; }4. 相乘 直接对题目进行模拟看到这么大的数我的建议是不管3721直接转long long #include iostream using namespace std;typedef long long LL;int main() {for (int i 1; i 1000000007; i){if ((LL)i * 2021 % 1000000007 999999999){printf(%lld\n, i);break;}} return 0; }5. 路径 求1 ~ 2021直接的最短路然后边的话如果两点之间的绝对值小于21的话就是他俩的最小公倍数如果大于21的话就没有边。 创图求最短路 填空题代码有点搓海涵。 最小公倍数 a * b / 最大公约数。 这一道题全是模板。 #include bits/stdc.h using namespace std;const int N 1e6 10, INF 0x3f3f3f3f;typedef pairint, int PII;int h[N], e[N], w[N], ne[N], idx; int dist[2100]; bool st[2100];int gcd(int a, int b); int lcm(int a, int b);void Add(int a, int b, int c) {e[idx] b, w[idx] c, ne[idx] h[a], h[a] idx; }void Dijkstra() {memset(dist, 0x3f, sizeof dist);dist[1] 0;priority_queuePII, vectorPII, greaterPII heap;heap.push({ 0, 1 });while (heap.size()){auto t heap.top();heap.pop();int v t.second;if (st[v]) continue;st[v] true;for (int i h[v]; i ! -1; i ne[i]){int j e[i];if (dist[j] dist[v] w[i]){dist[j] dist[v] w[i];heap.push({ dist[j], j });}}} }int main() {//创建图memset(h, -1, sizeof h);for (int i 1; i 2021; i){for (int j i 1; j 2021; j){if (abs(i - j) 21){int t lcm(i, j);Add(i, j, t);}}}//Dijkstra();if (dist[2021] INF)printf(找不到\n);elseprintf(%d\n, dist[2021]);return 0; }int gcd(int a, int b) {return b ? gcd(b, a % b) : a; } int lcm(int a, int b) {return a * b / gcd(a, b); }6.时间显示 题目要求 给我们一个毫秒数因为不用管年份和毫秒所以我们只需要计算出多余的东西就好了。 基础的时间换算知识就能解决这题 1秒 1000毫秒1分钟 60秒1 小时 60分钟1 天 24小时。 要注意输出格式小于10的数前面需要加0。 #include bits/stdc.h using namespace std;typedef long long LL;int main() {LL sum;scanf(%lld,sum);sum / 1000; //int h sum % (60*60*24) / (60*60);int t sum % (60*60) / 60;int s sum % 60;if (h 10)printf(0%d:, h);elseprintf(%d:,h);if (t 10)printf(0%d:, t);elseprintf(%d:,t);if (s 10)printf(0%d, s);elseprintf(%d,s);return 0; }7.最少砝码 题目要求 输入一个整数n要求我们从1~n之内选出最少的数像一个天平那样表示其中的所有数。 思路 水个题解把3进制什么鬼用三进制能表示的数只要 所给定的范围那么其的幂就是最少数的个数。 不行看看别人的题解Acwing和蓝桥杯官网都有题解。 传送门~~~~~~~ #include bits/stdc.h using namespace std;typedef long long LL;int main() {LL x,sum 0;int res 0;scanf(%lld, x);while (sum x){sum pow(3, res);}printf(%d\n, res);return 0; }8. 杨辉三角形 题目要求 给我们一个数然后求其在杨辉三角中的第几位。 思路 暴力枚举 杨辉三角都会构造我们预处理出来前1000行的杨辉三角最多1000行多了会爆。 然后一一枚举就好了。可以过40%的测试用例 #include bits/stdc.husing namespace std;const int N 1e3 10;int n 1000; int a[N][N];int main() {a[1][1] 1;for (int i 2; i n; i ) for (int j 1; j i; j )a[i][j] a[i - 1][j] a[i - 1][j - 1];int x;scanf(%d, x);int cnt 0;for (int i 1; i n; i ) for (int j 1; j i; j ){cnt ;if (a[i][j] x) {printf(%d\n,cnt);return 0;}} return 0; }二分 找规律 观察下图我们可以发现杨辉三角其实是一个对称的所以我们只对其进行一半的操作就好了。 我们就可以对其进行二分的操作了很妙。 这个是视频题解y总真的讲的非常的详细。 #include bits/stdc.husing namespace std;typedef long long LL;LL n;LL C(int a, int b) {LL res 1;for (int i a, j 1; j b; i--, j){res res * i / j;if (res n)return res;}return res; }bool check(int k) {// l 是下限, r 是上限 LL l 2 * k, r max(l, n); while (l r){int mid l r 1;if (C(mid,k) n)r mid;elsel mid 1;}//二分完成之后r l 是下限 if (C(r,k) ! n) return false;printf(%lld\n, r * (r 1) / 2 k 1);return true; } int main() {scanf(%lld, n);// k 枚举的上限 for (int k 16; ; k--){if (check(k))break;}return 0; }9. 左孩子右兄弟 题目要求 给我构造一棵树然后将其转化为左孩子有兄弟的表示方式方式使其的深度最大。 左孩子右兄弟 左孩子就是将r节点的左孩子变成原本节点的孩子其中任意一个没有的话就空着。右兄弟呢就是r节点的兄弟如果没有兄弟节点右孩子也空着。 蓝桥的题目没有图片可以去Acwing上也有这道题目并且有图片。 思路 我们其实通过这张图就可以发现只需要将其孩子最多的那个子树放在最后就可以是整棵树拉长了而右孩子永远是右兄弟。 所以最大深度 子节点的数量 子节点所能形成的最大深度。 个人感觉有点那个树形dp的感觉。 另外注意题目中说只有一个节点的高度为0这与我们平时所学的数据结构不一样我们所学的只有一个节点树的高度是1. 所以只需要在最后的时候将答案减去1就好了。 也可以在dfs函数中将高度最开始1赋值成0都可以。 #include bits/stdc.h using namespace std;const int N 1e5 10;int n; int h[N], e[N], ne[N], idx;void Add(int a, int b) {e[idx] b, ne[idx] h[a], h[a] idx; }int dfs(int r) {int hmax 1, cnt 0; //hmax 为所子节点的最大高度 cnt为字节点的数量for (int i h[r]; i ! -1; i ne[i]){int j e[i];hmax max(hmax, dfs(j));cnt;}return hmax cnt; }int main() {scanf(%d, n);memset(h, -1, sizeof h);for (int i 2; i n; i){int p;scanf(%d, p);Add(p, i);}printf(%d\n, dfs(1) - 1);return 0; }
http://www.hkea.cn/news/14580968/

相关文章:

  • 淘宝的好券网站怎么做乔柘云智能建站
  • 惠济区城乡建设局网站保定网站制作策划
  • 目前最先进的网站建设技术贝贝网网站开发背景
  • 自适应网站如何做设计网站页面
  • 建筑招工人在哪个网站比较好找护肤品营销策划方案
  • 咖啡的网站建设策划书网站建设视频格式
  • 深圳网站设计南京北京注册公司需要什么手续和证件
  • 八方建设集团有限公司网站mu建站工具
  • 长春建站公司网站.net网站 开发
  • 自己建网站百度到吗哪里有最新的网站源码
  • 网站运维公司有哪些广告设计优秀作品
  • 温州市瓯海建设局网站爱电影网站
  • 高端电商网站建设做cad模板下载网站
  • 网站开发的付款方式石家庄网站如何制作
  • 企业网站的网络营销功能长沙城乡建设网站
  • 太原市免费网站建设广告联盟官网
  • 网站产品的详情页怎么做西安学校网站建设费用
  • 建立网站的平台展示型网站搭建
  • 网站开发 保修期微页制作网站模板下载软件
  • 网站权重值在较长时间内是一定的页面优化asp.net企业网站源码
  • 用wordpress建站要不要用宝塔西安手机网站建站
  • 南昌网站关键词排名tuzicms做企业手机网站如何
  • 网站建设中倒计时模板自己用电脑做虚拟机怎么建网站
  • 如何做网站导航栏重庆公司大学派斯学院
  • 大连手机自适应网站建设服务黑龙江网站建设业务
  • dedecms医院网站wap模板(橙色)网站选项卡代码
  • 长兴建设局网站莆田网站建设收费标准
  • 网站上传文件功能实现网站网站开发软件
  • 公司网站怎么建站内江网站建设
  • 品牌网站建设 磐石网络的确好如何看网站点击量