题目背景

蒟蒻HansBug在英语考场上,挠了无数次的头,可脑子里还是一片空白。

题目描述

眼下出现在HansBug蒟蒻面前的是一篇英语作文,然而智商捉急的HansBug已经草草写完了,此时 他发现离考试结束还有40min,于是他打算估计一下这篇共有M个单词的英语作文的含金量如何。众所周知的是,在中高考英语作文中使用高级词汇可以有效提 高文章的含金量,从而获得更好的分数。已知蒟蒻HansBug知道N个高级词汇,该词汇为Ai(词汇长度为Li,包含数字、大小写字母),该高级词汇的含 金量为Bi,则该高级词汇每出现一次便可增加Bi的含金量。可是他脑细胞和RP已经消耗殆尽,所以这个伟大的任务就交给你啦!

输入输出格式

输入格式:

第一行包含两个整数N和P,N表示HansBug共知道的高级词汇个数,P为模数

第2-N+1行,每行包含一个单词Ai(长度为Li)和一个整数Bi,其中Bi表示该单词的含金量(0<Bi<=100000)

接下来直到输入结束的若干行为一篇英语作文,其中包含共计M个单词,以及若干的分隔符(分隔符包含且仅包含" "、","、"."、"!"、"?")

输出格式:

一行,包含一个整数,为该文章的总含金量对P的模。

输入输出样例

输入样例#1:

5 99
hansbug 1
kkksc03 2
yyy 3
absi2011 4
lzn 100
hansbug is a juruo!but absi2011 not.!?!
one day absi2011 laughed at yyy and hansbug.
then kkksc03 and lzn blamed him for that.
输出样例#1:

16
输入样例#2:

5 99
yyyy 1
kkksc03 2
yyy 3
absi2011 4
lzn 100
yyyy is a juruo!but absi2011 not.!?!
one day absi2011 laughed at yyy and yyyy.
then kkksc03 and lzn blamed him for that.
输出样例#2:

16

说明

样例1中,共计出现了2次hansbug、2次absi2011、1次yyy、1次kkksc03、1次lzn,所以总含金量为1*2+2*4+3*1+4*1+100*1=115,对99取模就是16。

样例2中,和样例1基本一样,值得注意的是整体的yyyy不可以被认为是yyy出现2次,请注意这是一篇英语作文,一切以单词为最小单位。

  这题又是水题,主要可以体会一下map的方便,还让我回忆下c语言自带的几个有用的字符处理函数。

代码如下:

 #include <bits/stdc++.h>

 using namespace std;
int n,p,ans;
string a;
char t;
map<string,int>s;//用map来存储对应单词和它的含金量
int main()
{
//freopen("de.txt","r",stdin);
ans=;
scanf("%d%d",&n,&p);
for (int i=;i<n;++i)
{
cin>>a;
scanf("%d",&s[a]);
}
getchar();
a="";
while (scanf("%c",&t)==)
{
if (!isalnum(t))//这个函数的意思是该字符是否为数字或字母
{ //cout<<a<<endl;
//printf("%d\n",s[a]);
ans=(ans+s[a])%p;
a="";
}
else
a+=t;
}
printf("%d\n",ans);
return ;
} //isalpha(ch),该字符是否为字母
//isdigit(ch),该字符是否为数字

洛谷P2786 英语1(eng1)- 英语作文的更多相关文章

  1. 洛谷P2786 英语1(eng1)- 英语作文——map

    给一手链接 https://www.luogu.com.cn/problem/P2786 拿这道题当map模板练练手qwq #include<cstdio> #include<cst ...

  2. [洛谷P1707] 刷题比赛

    洛谷题目连接:刷题比赛 题目背景 nodgd是一个喜欢写程序的同学,前不久洛谷OJ横空出世,nodgd同学当然第一时间来到洛谷OJ刷题.于是发生了一系列有趣的事情,他就打算用这些事情来出题恶心大家-- ...

  3. DP【洛谷P1704】 寻找最优美做题曲线

    [洛谷P1704] 寻找最优美做题曲线 题目背景 nodgd是一个喜欢写程序的同学,前不久(好像还是有点久了)洛谷OJ横空出世,nodgd同学当然第一时间来到洛谷OJ刷题.于是发生了一系列有趣的事情, ...

  4. 洛谷 P1540 机器翻译

    链接:https://www.luogu.org/problemnew/show/p1540 题目: 题目背景 小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章. 题目描述 这个翻译 ...

  5. 洛谷P3412 仓鼠找$Sugar\ II$题解(期望+统计论?)

    洛谷P3412 仓鼠找\(Sugar\ II\)题解(期望+统计论?) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1327573 原题链接:洛谷P3412 ...

  6. 洛谷P1808 单词分类_NOI导刊2011提高(01) 字符串排序

    洛谷P1808 单词分类_NOI导刊2011提高(01) 题目描述 Oliver为了学好英语决定苦背单词,但很快他发现要直接记住杂乱无章的单词非常困难,他决定对单词进行分类. 两个单词可以分为一类当且 ...

  7. P4554 小明的游戏 (洛谷) 双端队列BFS

    最近没有更新博客,全是因为英语,英语太难了QWQ 洛谷春令营的作业我也不会(我是弱鸡),随机跳了2个题,难度不高,还是讲讲吧,学学新算法也好(可以拿来水博客) 第一题就是这个小明的游戏 小明最近喜欢玩 ...

  8. [洛谷日报#204] StackEdit——Markdown 编辑器的功能介绍

    本文同时发表于洛谷日报,您也可以通过洛谷博客进行查看. 1.介绍与开始使用 1.1 这是什么? StackEdit是基于PageDown.Stack Overflow和其他堆栈交换站点使用的Markd ...

  9. 洛谷 P2614 计算器弹琴

    P2614 计算器弹琴 题目描述 总所周知,计算器可以拿来干很多它本不应该干的事情,比如写作文.(参看洛谷P2549) 小A发现了一个计算器的另一个隐藏功能——弹琴. http://www.bilib ...

随机推荐

  1. web项目问题总结

    1.项目编码问题:建立项目之初,应统一设置项目组所有电脑的eclipse 默认项目编码,还有各个文件的编码格式 中文乱码的问题,需要三个地方同时设置utf-8编码,第一是数据库里表的编码,第二是jsp ...

  2. 基于Socket和OpenCV的实时视频传输

    https://blog.csdn.net/pengz0807/article/details/52204475

  3. webpack 中vue文件使用scss需要注意的地方

    需要使用npm添加node_sass和sass_loader 并且在配置文件中添加规则: { test: /\.scss$/, use: ["style-loader", &quo ...

  4. 109、TensorFlow计算张量的值

    # 当计算图创建成功时 # 你就可以运行这个计算图,然后生成一个新的张量 # 并且得到这个张量指向的计算图中具体的数值 #这个功能在debug的时候非常有必要 #最简单获得张量具体值的方法是使用Ten ...

  5. 测开之路四十九:用Django实现扑克牌游戏

    用Django实现和之前flask一样的扑克牌游戏 项目结构 html <!DOCTYPE html><html lang="en"><head> ...

  6. WEUI官方样式小程序工具打开预览

    https://github.com/Tencent/weui-wxss 用微信web开发者工具打开dist目录(请注意,是dist目录,不是整个项目)

  7. mysql + grafana监控

      1.首先需要增加授权 CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'XXXXXXXX' WITH MAX_USER_CONNECTIONS 3 ...

  8. JQuery实现页面跳转

    $(function(){ var pn = $("#gotopagenum").val();       //#gotopagenum是文本框的id属性 location.hre ...

  9. BPT(Business Process Testing)

  10. 小程序中为什么使用var that=this

    前言: 在小程序或者js开发中,经常需要使用var that = this;开始我以为是无用功,(原谅我的无知),后来从面向对象的角度一想就明白了,下面简单解释一下我自己的理解,欢迎指正批评. 代码示 ...