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 ...
随机推荐
- Find a way out of the ClassLoader maze
June 6, 2003 Q: When should I use Thread.getContextClassLoader() ? A: Although not frequently asked, ...
- win7 忘记密码
你可以找个PE来修改密码,用光盘或U盘做PE都行,现在很多PE都支持密码修改的!不过下面这个方法还是要用到PE:1. 进入pe2.进入c:\windows\system32下 更改magnify.ex ...
- 小程序swiper效果高宽设置(微信小程序交流群:604788754)
swiper的宽和高一定要设置在swiper上面.swiper-item默认继承swiper的宽和高.swiper-item容器里面的宽和高没有继承他的父节点宽和高,需要从新设置. 不明白之处,可以咨 ...
- DBProxy 项目全解
转载自:https://github.com/Meituan-Dianping/DBProxy/blob/master/doc/USER_GUIDE.md#2 1 总体信息 1.1 关于 ...
- update-alternatives关键解疑
update-alternatives的用法网上到处又有,但有2个知识点好像都没怎么提到: 1.--install 里的参数link到底是啥意思,其实update-alternatives本质就是在/ ...
- error: illegal character '\ufeff' 的解决方案
今天使用scalac 命令编译scala文件的时候,出错了,出现如下错误提示:
- JavaWeb基础-认识JavaWeb
程序开发体系 B/S 浏览器/服务器 开发维护成本低 客户端负载低 安全性低 C/S 客户端/服务器 成本高 客户端负载高 安全性高 javaweb简介 静态网页 HTML CSS,人浏览的数据是始终 ...
- 一个在linxu自动切换ip的脚本
最近的爬虫是在linux下运行的,使用的是云立方的代理服务器,需要自动切换一下ip. #!/bin/bash# coding:utf8 aa="sources.list" #主流程 ...
- format格式
The format part is where you can specify more precisely the format of the data that you expect. For ...
- 从原理上理解如何由震源机制一个节面的解:strike,dip,rake可以求出另一个节面的解
首先,需要回到最原始的地震矩的表达式: 已知strike,dip,rake 根据strike和dip可以求出v,根据strike,dip,rake,可以求出u. 把求出来的v和u互换,相当于原来的位错 ...