『ACM C++』 PTA 天梯赛练习集L1 | 048-49
今日刷题048-049
------------------------------------------------L1-048----------------------------------------------------------
L1-048 矩阵A乘以B
给定两个矩阵A和B,要求你计算它们的乘积矩阵AB。需要注意的是,只有规模匹配的矩阵才可以相乘。即若A有Ra行、Ca列,B有Rb行、Cb列,则只有Ca与Rb相等时,两个矩阵才能相乘。
输入格式:
输入先后给出两个矩阵A和B。对于每个矩阵,首先在一行中给出其行数R和列数C,随后R行,每行给出C个整数,以1个空格分隔,且行首尾没有多余的空格。输入保证两个矩阵的R和C都是正数,并且所有整数的绝对值不超过100。
输出格式:
若输入的两个矩阵的规模是匹配的,则按照输入的格式输出乘积矩阵AB,否则输出Error: Ca != Rb
,其中Ca
是A的列数,Rb
是B的行数。
输入样例1:
2 3 1 2 3 4 5 6 3 4 7 8 9 0 -1 -2 -3 -4 5 6 7 8
输出样例1:
2 4 20 22 24 16 53 58 63 28
输入样例2:
3 2 38 26 43 -5 0 17 3 2 -11 57 99 68 81 72
输出样例2:
Error: 2 != 3
------------------------------------------------L1-048----------------------------------------------------------
注解:难度不大,线代的基本运算,注意特判就好了。
#include<stdio.h>int Ra,Ca,Rb,Cb,sum; int A[9999][9999]; int B[9999][9999]; int main() {scanf("%d %d",&Ra,&Ca);for(int i = 1;i<=Ra;i++)for(int u = 1;u<=Ca;u++)scanf("%d",&A[i][u]);scanf("%d %d",&Rb,&Cb);for(int i = 1;i<=Rb;i++)for(int u =1;u<=Cb;u++)scanf("%d",&B[i][u]);if(Ca!=Rb) printf("Error: %d != %d\n",Ca,Rb);else{printf("%d %d\n",Ra,Cb);for(int i = 1;i<=Ra;i++){for(int j = 1;j<=Cb;j++){sum = 0;for(int u = 1;u<=Rb;u++) sum+= A[i][u]*B[u][j];printf("%d",sum);if(j!=Cb) printf(" ");}printf("\n");}}return 0; }
------------------------------------------------L1-049----------------------------------------------------------
L1-049 天梯赛座位分配
天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情。为此我们制定如下策略:假设某赛场有 N 所学校参赛,第 i 所学校有 M[i] 支队伍,每队 10 位参赛选手。令每校选手排成一列纵队,第 i+1 队的选手排在第 i 队选手之后。从第 1 所学校开始,各校的第 1 位队员顺次入座,然后是各校的第 2 位队员…… 以此类推。如果最后只剩下 1 所学校的队伍还没有分配座位,则需要安排他们的队员隔位就坐。本题就要求你编写程序,自动为各校生成队员的座位号,从 1 开始编号。
输入格式:
输入在一行中给出参赛的高校数 N (不超过100的正整数);第二行给出 N 个不超过10的正整数,其中第 i 个数对应第 i 所高校的参赛队伍数,数字间以空格分隔。
输出格式:
从第 1 所高校的第 1 支队伍开始,顺次输出队员的座位号。每队占一行,座位号间以 1 个空格分隔,行首尾不得有多余空格。另外,每所高校的第一行按“#X”输出该校的编号X,从 1 开始。
输入样例:
3 3 4 2
输出样例:
#1 1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52 55 58 61 63 65 67 69 71 73 75 77 79 #2 2 5 8 11 14 17 20 23 26 29 32 35 38 41 44 47 50 53 56 59 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100 #3 3 6 9 12 15 18 21 24 27 30 33 36 39 42 45 48 51 54 57 60
------------------------------------------------L1-049----------------------------------------------------------
注解:这题有点小烧脑,关是输出排序就是一个问题。注意一下输出的格式转换。
#include<stdio.h>int times,total,count = 1,Temp = 0; int uni[101]; int unio[101]; int write[101][101]; int main() {scanf("%d",×);for(int i = 0;i<times;i++){scanf("%d",&uni[i]);uni[i]*=10;unio[i] = uni[i];total+=uni[i];}while(1){ for(int i = 0;i<times;i++){if(uni[i] == 0) continue; // printf("%d--------%d\n",write[i][uni[i] + 1],count);if(write[i][uni[i] + 1] == (count - 1) && write[i][uni[i]+1] != 0){count++;continue;}write[i][uni[i]] = count;count++;uni[i]--;}int ans = 0;for(int i = 0;i<times;i++) if(uni[i] != 0) ans = 1;if(ans == 0) break;}for(int i = 0;i<times;i++){printf("#%d\n",i+1);for(int u = unio[i];u>0;u--){printf("%d",write[i][u]);if(u%10==1 && u != unio[i]) printf("\n");else printf(" ");}}return 0;}
注:如果有更好的解法,真心希望您能够评论留言贴上您的代码呢~互相帮助互相鼓励才能成长鸭~~
转载于:https://www.cnblogs.com/winniy/p/10597675.html
『ACM C++』 PTA 天梯赛练习集L1 | 048-49相关推荐
- 『ACM C++』 PTA 天梯赛练习集L1 | 016-017
今天开了两个大会,时间都给占掉了,就刷了两道题~ 明天加油!!! ------------------------------------------------L1-016------------- ...
- 【CCCC】PAT : 团体程序设计天梯赛-练习集 L1 答案
[CCCC]PAT : 团体程序设计天梯赛-练习集 L1 答案 鉴定完毕,全部水题 ヾ(•ω•`)o 标号 标题 分数 通过数 提交数 通过率 L1-001 Hello World 5 46779 1 ...
- 团体程序设计天梯赛 -- 练习集 (L1合集)
文章目录 L1-001 Hello World (5 分) L1-002 打印沙漏 (20 分) L1-003 个位数统计 (15 分) L1-004 计算摄氏温度 (5 分) L1-005 考试座位 ...
- PAT : 团体程序设计天梯赛-练习集L1 个人题解
另把天梯赛所有题解内容全部打包成了一个文档,可以自行下载:https://download.csdn.net/download/daixinliangwyx/11170075 L1-001 Hello ...
- c语言pta判断字符或数字的昵称,c/c++开发分享『ACM C++』PTA浙大 | 基础题 – 打印沙漏...
< 一首好曲推荐:同时我也设置成了我的博客背景音乐 <开启新征程> &mdas 收藏链接: ----------------题目-------------------- 本题 ...
- PTA天梯赛-练习集 L1-009 N个数求和
模拟通分 #include <bits/stdc++.h> using namespace std; #define d(x) cout << (x) << end ...
- 团体程序设计天梯赛-练习集 L1
目录 L1-001 Hello World L1-002 打印沙漏 L1-003 个位数统计 L1-004 计算摄氏温度 L1-005 考试座位号 L1-006 连续因子[枚举] L1-007 念数字 ...
- 团体程序设计天梯赛-练习集 L1合集
来自<https://www.patest.cn/contests/gplt> L1-001. Hello World 这道超级简单的题目没有任何输入. 你只需要在一行中输出著名短句&qu ...
- 团体程序设计天梯赛-练习集 L1阶段 全部题解
L1-001. Hello World 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 这道超级简单的题目没有任何输入. 你只需要在一行中输 ...
最新文章
- dtoj#4178. 配对(pair)
- 【Linux】一步一步学Linux——dpkg-query命令(271)
- 老华为可以升级鸿蒙,真良心!五年前老机型都能升级华为鸿蒙
- 养成一个习惯有多难?不如先从一个小目标开始
- 我决定不能贱卖自己(2010年11月13日志)
- ES6新特性_ES6_Symbol的介绍与创建---JavaScript_ECMAScript_ES6-ES11新特性工作笔记015
- hdu 6203 ping ping ping(贪心+树状数组+dfs序)
- 新老更替选本难 最新CPU显卡参数解析
- python 网页上显示数据_Python实战【第二节】在网页上显示信息
- 用c语言判断一个数是否是素数(质数)
- PHPStorm运行PHP代码(新手教程),PHP新手入门教程
- 国内外PaaS案例解析、赛道、趋势
- 微信直播聊天室架构演进
- 【Sensors】原始GNSS测量(6)
- Java写的第一个小游戏
- 1、登录——邮件发送激活链接
- 全球与中国云监控软件市场深度研究分析报告(2021)
- 【云原生学习3】Pod及K8S
- 数据结构——图书管理系统
- 【数据架构】SOGAF 通用实体框架 (CoE)