AC Dream1069
这题的加密字符 - (Fibnacci % 26),如果得到的字符小于'a',就等于加密字符 - (Fibnacci % 26)+26。
获得题目的函数如下:
void getItem(){
char s1[]="hjxh dwh v vxxpde,mmo ijzr yfcz hg pbzrxdvgqij rid stl mc zspm vfvuu vb uwu spmwzh.";
long long a[100];
a[0]=a[1]=1;
for(int i=2;i<100;++i) a[i]=a[i-1]+a[i-2];
int c=0,n=strlen(s1);
char s2[100]; //题目存放在s2
for(int i=0;i<n;++i){
if(s1[i]==' '||s1[i]==','||s1[i]=='.') s2[i]=s1[i];
else{
int b=a[c++]%26;
if(s1[i]-b<'a') s2[i]=s1[i]+26-b;
else s2[i]=s1[i]-b;
}
}
s2[n]='\0';
printf("%s\n",s2);
}
题意:给定一个long long范围内的整数,求各位数的和。
此题坑点:
int -2147483648~2147483647
long long的最大值:9223372036854775807
long long的最小值:-9223372036854775808
由取值范围可知,不可直接对-9223372036854775808求绝对值,会溢出,可以采取特判,也可以直接当做字符串处理。
AC代码:
#include<cstdio>
#include<cstring>
void getItem(){
char s1[]="hjxh dwh v vxxpde,mmo ijzr yfcz hg pbzrxdvgqij rid stl mc zspm vfvuu vb uwu spmwzh.";
long long a[100];
a[0]=a[1]=1;
for(int i=2;i<100;++i) a[i]=a[i-1]+a[i-2];
int c=0,n=strlen(s1);
char s2[100]; //题目存放在s2
for(int i=0;i<n;++i){
if(s1[i]==' '||s1[i]==','||s1[i]=='.') s2[i]=s1[i];
else{
int b=a[c++]%26;
if(s1[i]-b<'a') s2[i]=s1[i]+26-b;
else s2[i]=s1[i]-b;
}
}
s2[n]='\0';
//printf("%s\n",s2);
}
int getSum(char *s){
int n=strlen(s);
int i=0;
if(s[0]=='-') i=1;
int ans=0;
for(;i<n;++i){
ans+=s[i]-'0';
}
return ans;
}
int main(){
//getItem(); //题意:求给定数字各位的和
char s[30];
while(scanf("%s",s)==1){
printf("%d\n",getSum(s));
}
return 0;
}
如有不当之处欢迎指出!
AC Dream1069的更多相关文章
- 彻底理解AC多模式匹配算法
(本文尤其适合遍览网上的讲解而仍百思不得姐的同学) 一.原理 AC自动机首先将模式组记录为Trie字典树的形式,以节点表示不同状态,边上标以字母表中的字符,表示状态的转移.根节点状态记为0状态,表示起 ...
- 基于trie树做一个ac自动机
基于trie树做一个ac自动机 #!/usr/bin/python # -*- coding: utf-8 -*- class Node: def __init__(self): self.value ...
- AC自动机-算法详解
What's Aho-Corasick automaton? 一种多模式串匹配算法,该算法在1975年产生于贝尔实验室,是著名的多模式匹配算法之一. 简单的说,KMP用来在一篇文章中匹配一个模式串:但 ...
- AC算法学习笔记
1.算法流程图 (1) void Init() 此函数是初始化函数,用来给fail数组和goto数组初始化值. (2) void GotoFunction(string x) 这个函数的作 ...
- 四种比较简单的图像显著性区域特征提取方法原理及实现-----> AC/HC/LC/FT。
laviewpbt 2014.8.4 编辑 Email:laviewpbt@sina.com QQ:33184777 最近闲来蛋痛,看了一些显著性检测的文章,只是简单的看看,并没有深入的研究,以 ...
- python爬虫学习(11) —— 也写个AC自动机
0. 写在前面 本文记录了一个AC自动机的诞生! 之前看过有人用C++写过AC自动机,也有用C#写的,还有一个用nodejs写的.. C# 逆袭--自制日刷千题的AC自动机攻克HDU OJ HDU 自 ...
- python爬虫学习(7) —— 爬取你的AC代码
上一篇文章中,我们介绍了python爬虫利器--requests,并且拿HDU做了小测试. 这篇文章,我们来爬取一下自己AC的代码. 1 确定ac代码对应的页面 如下图所示,我们一般情况可以通过该顺序 ...
- BZOJ 2434: [Noi2011]阿狸的打字机 [AC自动机 Fail树 树状数组 DFS序]
2434: [Noi2011]阿狸的打字机 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 2545 Solved: 1419[Submit][Sta ...
- BZOJ 1030: [JSOI2007]文本生成器 [AC自动机 DP]
1030: [JSOI2007]文本生成器 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 3953 Solved: 1614[Submit][Stat ...
随机推荐
- web项目各个clean
project clean:清楚tomcat下的已编译的java类.class文件,包括js但不包括jsp server clean:clean tomcat work dictionary:清除to ...
- web技术发展历程--读《大型网站技术架构_核心原理与案例分析》
1 早期的web服务 2 CGI程序的出现.发展.凋零到MVC的兴起 CGI:通用网关接口技术. 随着CGI技术的出现,web服务端可以通过不同的用户请求产生动态页面内容. web服务器将请求数据交给 ...
- HTML5与css3权威指南(一)
doctype声明: <!DOCTYPE html> 字符编码: <meta charset="utf-8"> 不允许写结束标记:area,base,br. ...
- 使用sed替换一行内多个括号内的值
1. 括号在同一行 # cat test2good morning (good afternoon) (good evening) (goodgood) (good morning) # cat se ...
- MonogoDB 查询小结
MonogoDB是一种NoSQL数据库 优点: 1.数据的存储以json的文档进行存储(面向文档存储) 2.聚合框架查询速度快 3.高效存储二进制大对象 缺点: 1.不支持事务 2.文件存储空间占用过 ...
- Sizeof的三种作用
一.计算常量占用的字节数 例如:int num=sizeof(10); printf("%i",num); 二.计算变量占用的字节数 例如:int num2=3; int resu ...
- SQL Server判断小数位数
项目中需要写一规则,目的是判断数值的小数位数,可以分为2中情况. 1.直接以小数点为分界点,小数点后的数据表示小数的位数,此种情况比较简单,直接使用CHARINDEX函数就可以搞定 其中CHARIND ...
- Yii框架里用grid.CGridView调用pager扩展不显示最后一页按钮的解决
有如下一例,调用zii.widgets.grid.CGridView显示Blog信息,代码如下: $this->widget('zii.widgets.grid.CGridView', arra ...
- 解决AspNet Zero Core 5.0.1无法运行的问题
最近在研究AspNet Zero Core 5.0.1时发现VS点击调试后就自动退出了,从ABP QQ群里得知作者加入了licensecode校验.经过一个周左右断断续续的折腾,算是破解了吧.原本想把 ...
- oracle用户、权限操作
oracle用户操作,权限操作: 1.创建用户,并让用户默认表空间为tb1: create user 用户名 identified by 密码 default namespace tb1 2.授权: ...