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 ...
随机推荐
- angular 常用插件集合
md5加密 https://www.npmjs.com/package/md5-typescript angular echarts https://github.com/xieziyu/ng ...
- laravel的validation 中文 文件
使用方法: 直接替换resources/lang/en/validation.php中的内容 <?php return [ 'unique' => ':attribute 已存在', 'a ...
- Win10系列:JavaScript页面导航
页面导航是在开发应用的过程中使用频率较高的技术,其中比较常用的导航方式有多页导航和页内导航,采用多页导航方式的应用程序包含一系列的页面,在一个页面中加入另一个页面的链接地址后,单击链接将跳转到指定页面 ...
- 尚学堂java 参考答案 第九章
一.选择题 1.AC 解析:A.注意题目是Collections不是 Collection,前者是一个until下的类,后者才是接口 C.Set中的数据是无序且不能重复的 2.A 解析:将发生数组越界 ...
- Java工厂方法模式
工厂方法模式: /** * 工厂方法模式:也叫工厂模式,属于创建型模式,父类工厂(接口)负责定义产品对象的公共接口, * 而子类工厂负责创建具体的产品对象. * 目的:是为了把产品的实例化操作延迟到子 ...
- day4-python基础-运算符
本章节主要说明Python的运算符.举个简单的例子 4 +5 = 9 . 例子中,4 和 5 被称为操作数,"+" 称为运算符. Python语言支持以下类型的运算符: 算术运算符 ...
- HTML5 ②
html代码中的各种标签和特殊符号: 1.<p>段落标签 默认会在段落前后都有空行</p>: 2.<hr/> 水平线标签 <br/>换行标签 ...
- nginx:在linux上进行nginx的安装
-----1.安装 换源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 下载: wget ...
- aspnet core 2.0 发布之后没有 views文件夹
在项目文件里面 增加这个节点: MvcRazorCompileOnPublish 设置为false 是会发布views <PropertyGroup> <PackageTargetF ...
- centos中PATH环境变量查看和修改
PAHT环境变量 :定义的是系统搜索命令的路径.<就是自己写的程序不打绝对路径就可以执行,必须放到 $PATH这个文件中>查看命令:echo $PATH 以添加mongodb server ...