3个小时,4道题目,雷火的题目不在于难,更在于对细节的把控和写大模拟的耐心,花了一个半小时,AC了3.85,直接交卷退了。第一题AC,第二题AC,第三题85%,第四题AC。下面分享一下大致的题意和对应的代码,就不多说了,最近很累(代码可能会有贴错的情况,如有望指正,感谢~)。
T1-小Y抽奖
题意
n行m列个奖励格子,每次抽奖消耗一个道具。每个格子奖励的数量有限且各不相司。每个格子被抽到一次,剩余的奖励数量-1。剩余的奖励数量为0时,则不会再抽到该格子。小Y抽了好多次,但一直没有抽到最想要的奖励,给出示例图中的情况。求再买几个猪心,才能保证抽到一次她想要的奖励。
输入描述
第一行:两个正整救n和m (1<= n, m<=100),表示n*m个奖励格子。
第二行:两个正整数x和y ( 1<= x<= n,1<=y<=m),表示小Y想要抽到的奖励位置(保证小Y想要的奖励剩余数量不为0)。
接下来n行,每行m个整数,表示每个格子的奖励剩余a (0<=a<=1000)。
输出描述
输出一个数字,表示需要买几个道具,才能够保证抽到一次想要的奖励。
样例数据
3 3
1 1
2 5 4
2 7 8
2 3 0
输出
32
废话
遍历操作模拟一下即可
AC_Code
// 1
#include
#define ll long long
using namespace std;
int main()
{
int n,m,x,y;
cin>>n>>m>>x>>y;
vector> a(n+1, vector(m+1));
for(int i=1; i<=n; i++)
for(int j=1; j<=m; j++)
cin>>a[i][j];
int sum=0;
for(int i=1; i<=n; i++)
for(int j=1; j<=m; j++)
if(i==x && j==y) sum+=1;
else sum += a[i][j];
cout<
T2-打魔法牌
题意
—套牌共N张,每张有数字和类别两个特征,数字范围为1~10,类别为A,B,C,D,E。要计算这套牌的倍数,默认1倍,有特殊的组合可以有更大的倍数(具体规则在图里面,真记不得了QAQ)。
输入描述
第一行:一个整数M(1<=M<= 1000),表示有M组数据;每组教据先输入N(1<= N<=5),表示这套牌的张数;接下来两行,第一行是N个数字,表示N张牌的点数。第二行N个字母,表示对应的N张牌的花色。
输出描述
每组数据输出对应的套牌的倍数。
样例数据
输入
2
5
9 9 9 9 9 A B C D E 5
3 2 1 10 9 A A A A A
输出
15000
300
废话
和T3一样,细节模拟题,写的有点长了
AC_Code
// 2
#include
#include