A - Marks

CodeForces - 152A

题意:给出一个学生人数n,每个学生的m个学科成绩(成绩从1到9)没有空格排列给出。在每科中都有成绩最好的人或者并列,求出最好成绩的人数

思路:求每列成绩中最大的数的个数。求出每列成绩中的最大值,遍历每列的各行若值与最大值一样就用另一个数组标记出来,最后遍历标记数组记录下总个数,即为最终结果。

代码:

#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,m;
cin>>n>>m;
char s[n+5][m+5];
for(int i=0;i<n;i++)
{
scanf("%s",&s[i]);
}
int b[n+5],ct=0;
memset(b,0,sizeof(b));
for(int j=0;j<m;j++)
{
int maxx;
maxx=s[0][j]-'0';
for(int i=0;i<n;i++)
{
maxx=max(s[i][j]-'0',maxx);
}
//cout<<maxx<<endl;
for(int i=0;i<n;i++)
{
if(s[i][j]-'0'==maxx)
{
b[i]=1;
//cout<<" "<<i<<endl;
}
}
}
for(int i=0;i<n;i++)
{
if(b[i]==1)ct++;
}
cout<<ct<<endl;
}

B - Steps

CodeForces - 152B

题意:给出一个方格的格式为n*m,一开始V位于(x,y)处,给出k个向量,对于每个向量都一直按向量的方向移动,但不能走出方格,当要出方格时就停止移动,再进行下一个向量的移动,运行完k次,求V一共移动了多少步。

题解:对于每一次的移动,分横轴和纵轴的两种情况算出在方格允许的范围内可移动的次数a,b,算出两个的最小次数t=min(a,b),求出变化后的x,y,记录下移动的步数s+=t;依次进行k次,求出总s即可。

代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
ll n,m;
cin>>n>>m;
ll x,y;
cin>>x>>y;
int k;
cin>>k;
ll s=0;
while(k--)
{
ll dx,dy,t,a,b;
cin>>dx>>dy;
if(dx<0)
{
a=(x-1)/-dx;
}
else if(dx>0)
{
a=(n-x)/dx;
}
if(dy<0)
{
b=(y-1)/-dy;
}
else if(dy>0)
{
b=(m-y)/dy;
}
if(dx==0||dy==0)
{
t=dx==0?b:a;
}
else t=min(a,b);
//cout<<t<<" ";
x=x+dx*t;
y=y+dy*t;
s+=t;
}
cout<<s<<endl;
}

C - Pocket Book

CodeForces - 152C

题意:给出n个字符串,每个字符串长度为m,每两串的前k(1=<k<=m)个字符可以进行交换,求有多少种不同的字符串。

题解:找规律,可以发现每列不同字符的个数相乘,即为最终结果。

代码:

#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,m;
cin>>n>>m;
char s[110][110];
for(int i=0;i<n;i++)
{
scanf("%s",&s[i]);
//puts(s[i]);
}
long long ct=1,w;
int b[1000];
for(int j=0;j<m;j++)
{
memset(b,0,sizeof(b));
w=0;
for(int i=0;i<n;i++)
{
if(b[s[i][j]-'A']==0)
{
++w;
b[s[i][j]-'A']=1;
}
}
ct=ct*w;
ct%=1000000007;
//cout<<w<<endl;
}
printf("%lld\n",ct);
}

2021.5.22 vj补题的更多相关文章

  1. QFNU-ACM 2021.10.09 Rating补题

    A - A CodeForces - 478A 注意点: 和为0时要特判一下. 代码: #include<bits/stdc++.h> using namespace std; int m ...

  2. 2021-5-15 vj补题

    C - Win or Freeze CodeForces - 151C 题目内容: You can't possibly imagine how cold our friends are this w ...

  3. 【春训团队赛第四场】补题 | MST上倍增 | LCA | DAG上最长路 | 思维 | 素数筛 | 找规律 | 计几 | 背包 | 并查集

    春训团队赛第四场 ID A B C D E F G H I J K L M AC O O O O O O O O O 补题 ? ? O O 传送门 题目链接(CF Gym102021) 题解链接(pd ...

  4. 2020.12.20vj补题

    A - Insomnia cure 题意:一共s只龙,每隔k,l,m,n只龙就会受伤,问这s只龙有多少龙是受伤的 思路:看起来题目范围并不是很多,直接进行循环判断 代码: 1 #include< ...

  5. hdu5017:补题系列之西安网络赛1011

    补题系列之西安网络赛1011 题目大意:给定一个椭球: 求它到原点的最短距离. 思路: 对于一个椭球的标准方程 x^2/a^2 + y^2/b^2 +z^2/c^2=1 来说,它到原点的最短距离即为m ...

  6. 2017河工大校赛补题CGH and 赛后小结

    网页设计课上实在无聊,便开始补题,发现比赛时候僵着的东西突然相通了不少 首先,"追妹"这题,两个队友讨论半天,分好多种情况最后放弃(可是我连题目都没看啊),今天看了之后试试是不是直 ...

  7. 2018 HDU多校第四场赛后补题

    2018 HDU多校第四场赛后补题 自己学校出的毒瘤场..吃枣药丸 hdu中的题号是6332 - 6343. K. Expression in Memories 题意: 判断一个简化版的算术表达式是否 ...

  8. 2018 HDU多校第三场赛后补题

    2018 HDU多校第三场赛后补题 从易到难来写吧,其中题意有些直接摘了Claris的,数据范围是就不标了. 如果需要可以去hdu题库里找.题号是6319 - 6331. L. Visual Cube ...

  9. [数]补题ver.

    上次补题好像把两次训练混在一起了,总之先按时间顺序补完这一次|ू・ω・` ) HDU-6301 不会的东西不能逃避.jpg 红小豆非常讨厌构造题,因为非常不会,并且非常逃避学习这类题,因为总也搞不清楚 ...

随机推荐

  1. pixhawk入门

    PX4 是软件名称,代码约30万行 Pixhawk是硬件名称 MissionPlanner是地面站名称 常见术语: WP:Way Point 航电 geofence:地理围栏 Rally Point: ...

  2. Mac shell 调节音量

    $ osascript -e 'get volume settings' $ osascript -e 'output volume of (get volume settings)' $ osasc ...

  3. 聚类算法与K-means实现

    聚类算法与K-means实现 一.聚类算法的数学描述: 区别于监督学习的算法(回归,分类,预测等),无监督学习就是指训练样本的 label 未知,只能通过对无标记的训练样本的学习来揭示数据的内在规律和 ...

  4. WebService学习总结(四)--基于CXF的服务端开发

    本节将实践目前最流行的第二种web service 发布和调试框架  CXF Apache CXF 是一个开放源代码框架,提供了用于方便地构建和开发 Web 服务的可靠基础架构.它允许创建高性能和可扩 ...

  5. 详细解读go语言中的chnanel

    Channel 底层数据结构 type hchan struct { qcount uint // 当前队列中剩余元素个数 dataqsiz uint // 环形队列长度,即可以存放的元素个数 buf ...

  6. Insights直播预告 | 多媒体管线服务,助您轻松进入“技术流”创新阵地

    [导读] 随着各类音视频移动应用快速发展,短视频.线上直播等娱乐方式逐渐为大众所喜爱.优质的视听效果和交互体验,往往能吸引更多的用户.多媒体管线服务作为一个轻量级的多媒体开发框架,其跨平台.高性能的多 ...

  7. ThreadLocal原理简单刨析

    ThreadLocal原理简单刨析 ThreadLocal实现了各个线程的数据隔离,要知道数据是如何隔离的,就要从源代码分析. ThreadLocal原理 需要提前说明的是:ThreadLocal只是 ...

  8. Linux制作根文件系统笔记

    测试平台 宿主机平台:Ubuntu 12.04.4 LTS 目标机:Easy-ARM IMX283 目标机内核:Linux 2.6.35.3 交叉编译器:arm-linux-gcc 4.4.4 Bus ...

  9. Java关键字-static汇总

    1.静态变量(被static修饰的成员变量) 1-静态变量 运行时,Java虚拟机只为静态变量分配一次内存(加载类的过程中完成静态变量的内存分配) 类的内部可以在任何方法内直接访问静态变量 其他类中可 ...

  10. element-ui 弹出组件的遮罩层在弹出层dialog模态框的上面

     造成的原因: 因为dialog的组件外层div设置了 position:absolute: 属性所以导致遮罩层会在最上面. 解决方法: 在属性内加上这段代码 :append-to-body=&quo ...