PAT-1084(外观数列 ) && PAT-1085 (PAT单位排行)
1084 利用字符串string的可加性
#include <bits/stdc++.h>
using namespace std;
int main ()
{
int x,n;
cin>>x>>n;
string str="x";
str[]=''+x;
for (int i=;i<=n;i++) {
string tmp="";
string t2="x";
char k=str[]; int num=;
for (int j=;j<str.size();j++) {
if (str[j]==k) num++;
else {
t2[]=k; tmp+=t2;
t2[]=''+num; tmp+=t2;
k=str[j]; num=;
}
}
t2[]=k; tmp+=t2;
t2[]=''+num; tmp+=t2;
str=tmp;
}
cout<<str<<endl;
return ;
}
1085 利用map 实现学校名称的映射
#include <bits/stdc++.h>
using namespace std;
const int N=1e5+;
struct T {
string name;
double sum;
int p;
int num;
};
map < string,int > mp;
T t[N];
int cnt;
int n;
bool cmp (T x,T y) {
if (x.p==y.p) {
if (x.num==y.num)
return x.name<y.name;
return x.num<y.num;
}
return x.p>y.p;
}
int main ()
{
ios::sync_with_stdio(false);// 不加这句话会超时
cin>>n;
for (int i=;i<=n;i++) {
string s1,s2; int val; double w;
//getchar();// 很奇怪 ios::同步后就不需要加 而不同步就需要加
cin>>s1>>val>>s2;
for (int j=;j<s2.size();j++)
if (s2[j]>='A'&&s2[j]<='Z')
s2[j]=s2[j]-'A'+'a';
if (s1[]=='B') w=(double)val/1.5;
else if (s1[]=='A') w=(double)val;
else w=(double)val*1.5;
if (!mp[s2]) {
mp[s2]=++cnt;
t[cnt].name=s2;
t[cnt].num=;
t[cnt].sum=w;
}
else {
int id=mp[s2];
t[id].num++;
t[id].sum+=w;
}
}
for (int i=;i<=cnt;i++)
t[i].p=(int)t[i].sum;
sort (t+,t++cnt,cmp);
cout<<cnt<<"\n"; int k=; int i=; int point=t[].p;
cout<<k<<" "<<t[i].name<<" "<<t[i].p<<" "<<t[i].num<<endl;
for (i=;i<=cnt;i++) {
if (t[i].p==point)
cout<<k<<" "<<t[i].name<<" "<<t[i].p<<" "<<t[i].num<<endl;
else {
point=t[i].p;
k=i;
cout<<k<<" "<<t[i].name<<" "<<t[i].p<<" "<<t[i].num<<endl;
} }
return ;
}
PAT-1084(外观数列 ) && PAT-1085 (PAT单位排行)的更多相关文章
- PAT 1084 外观数列(20)(代码+思路+推荐测试用例)
1084 外观数列(20 分) 外观数列是指具有以下特点的整数序列: d, d1, d111, d113, d11231, d112213111, ... 它从不等于 1 的数字 d 开始,序列的第 ...
- PAT 1084 外观数列
https://pintia.cn/problem-sets/994805260223102976/problems/994805260583813120 外观数列是指具有以下特点的整数序列: d, ...
- PAT乙级:1084 外观数列 (20分)
PAT乙级:1084 外观数列 (20分) 题干 外观数列是指具有以下特点的整数序列: d, d1, d111, d113, d11231, d112213111, ... 它从不等于 1 的数字 d ...
- PAT(B) 1084 外观数列(Java)
题目链接:1084 外观数列 (20 point(s)) 题目描述 外观数列是指具有以下特点的整数序列: d, d1, d111, d113, d11231, d112213111, - 它从不等于 ...
- PAT Basic 1084 外观数列 (20 分)
外观数列是指具有以下特点的整数序列: d, d1, d111, d113, d11231, d112213111, ... 它从不等于 1 的数字 d 开始,序列的第 n+1 项是对第 n 项的描述. ...
- 1084 外观数列 (20 分)C语言
外观数列是指具有以下特点的整数序列: d, d1, d111, d113, d11231, d112213111, ... 它从不等于 1 的数字 d 开始,序列的第 n+1 项是对第 n 项的描述. ...
- PAT 乙级 1084. 外观数列 (20) 【字符串】
题目链接 https://www.patest.cn/contests/pat-b-practise/1084 思路 用字符串模拟 然后要注意一点 它是连续的 才并在一起 就比如说 d, d1, d1 ...
- P1084 外观数列
转跳点:
- PAT 1085 PAT单位排行(25)(映射、集合训练)
1085 PAT单位排行(25 分) 每次 PAT 考试结束后,考试中心都会发布一个考生单位排行榜.本题就请你实现这个功能. 输入格式: 输入第一行给出一个正整数 N(≤105),即考生人数.随 ...
- PAT(B) 1085 PAT单位排行(Java:20分)
题目链接:1085 PAT单位排行 (25 point(s)) 题目描述 每次 PAT 考试结束后,考试中心都会发布一个考生单位排行榜.本题就请你实现这个功能. 输入格式 输入第一行给出一个正整数 N ...
随机推荐
- weblogic创建domain教程
1.创建domain [ls@ls ~]$ cd /weblogic/wlserver_10.3/common/bin/ #进入创建文件所在目录 [ls@ls bin]$ ./config.sh #执 ...
- gradle set
gradle安装 1◆ gradle下载 http://services.gradle.org/distributions/ 2◆ 配置环境 =====>D:\envs\grad ...
- window.open打开新窗口 参数
1,基本描述 oNewWindow = window.open( sURL , sName , sFeatures, bReplace) window.open在打开一个窗口(其url为sURL)后, ...
- LaTeX技巧10:LaTeX数学公式输入初级入门
LaTeX最强大的功能就是显示美丽的数学公式,下面我们来看这些公式是怎么实现的. 1.数学公式的前后要加上 $ 或 \( 和 \),比如:$f(x) = 3x + 7$ 和 \(f(x) = 3x + ...
- Java中数据类型相互转化
1 将String 转换成int? A. 有两个方法: 1). int i = Integer.parseInt([String]); 或 i = Integer.parseInt([String], ...
- UVA LA 3983 - Robotruck DP,优先队列 难度: 2
题目 https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_pr ...
- flask+apache+mod-wsgi部署遇到的坑
首先,看到这种方式部署,我也有疑问,为什么不用nginx,gunicorn.接手的项目,就先按照前人思路run起来. 线上使用ubuntu系统,apache2,而给我玩耍的测试机是centos6.5, ...
- HotSpot虚拟机对象探秘
参考:http://www.infoq.com/cn/articles/jvm-hotspot
- OPENWRT安装配置指南之 17.01.4 LEDE
简介 这个东西,需要看简介的就不要看下去了. 下面已刚刷进去,路由IP地址为192.168.1.1为例开始配置. 浏览器访问192.168.1.1,无密码. 一:配置上网 不管你是什么方式上网,请根据 ...
- EF-生成迁移版本
前面讲到可以使用迁移技术让程序自动更新数据库中相关的结构.在我们每次需要新增模型类时,请一定要养成一个好的习惯,使用Add-Migration命令生成迁移版本.这样能恢复被误删除的表. 一.新增迁移版 ...