N的M次方 马蹄集

 N的M次方
号难度:白银
。时间限制:1秒
巴占用内存:64M
输入正整数N(<1500),首先计算其逆序数M(比如12逆序后是21)。然后输
出N的M次方的最后3位数。
格式
输入格式:输入正整数N
输出格式:输出整型

//
// Created by abner on 2022/11/11.
//
#include <bits/stdc++.h>
using namespace std;
int main(){
         string a;
cin >>a;
int ans =0,now =0;
for (int i=0;i<a.length();i++){
ans=ans*10+a[i]-'0';
}
for (int i=a.length()-1 ;i>=0;i--){
 now = now * 10 + a[i]-'0';
}
int res =1;
for (int i=1;i<=now;i++){
res = (res * ans)%1000;
}
cout <<res;
return 0;
}

(4)编译器的分析\综合模式

正在上传…重新上传取消

逻辑上把编译器分为分析(前端)部分综合(后端)部分.
1> 分析(前端):语言结构和意义的分析; 从词法分析到中间代码生成各阶段的工作
2> 综合(后端):语言意义处理;从中间代码生成到目标代码生成的各阶段的工作
3> 编译器和解释器的区别往往是在形成中间代码之后开始的.

5. 编译器扫描的遍数

每个阶段将程序完整分析一遍的工作模式称为一遍扫描。
(将源程序或源程序的某种形式的中间表示完整分析一遍,亦称作一遍扫描)

第二章 词法分析

1. 词法分析中的若干问题

(1) 记号、模式与单词

单词的分类:关键字(保留字)、标识符、字面量、特殊符号
模式(pattern):产生/识别单词的规则
记号(token):按照某个模式(或规则)识别出的元素(一组)
单词(lexeme):被识别出的元素的值(字符串本身) ,也称为词值

(2) 词法分析器的作用与工作方式

词法分析器的作用:

1> 识别记号并交给语法分析器(根据模式识别记号)
2> 滤掉源程序中的无用成分,如注释、空格和回车等
3> 处理与具体平台有关的输入(如文件结束符的不同表示等)
4> 调用符号表管理器和出错处理器,进行相关处理

工作方式:
1.单独一遍扫描
2.作为语法分析器的子程序
3.并行方式

2. 模式的形式化描述

(1) 字符串与语言

语言L是有限字母表∑上有限长度字符串的集合.
定义中强调两个有限,因为计算机的表示能力有限 :
1> 字母表是有限的,即字母表中元素是有限多个;
2> 字符串的长度是有限的,即字符串中字符个数是有限多个。

(字符串与字符串集合相关的概念与运算,如前缀、后缀、子串、子序列等,字符串的并、交、连接、差、闭包)

(2) 正规式与正规集

令Σ是一个有限字母表,则Σ上的 正规式 及其表示的集合递归定义如下:
    1. ε是正规式,它表示集合  L(ε) = {ε}
    2. 若a是Σ上的字符,则a是正规式,它表示集合L(a)={a}
    3. 若正规式r和s分别表示集合L(r)和L(s),则
       (a) r|s是正规式,表示集合L(r)∪L(s),
       (b) rs是正规式,表示集合L(r)L(s),
       (c) r*是正规式,表示集合(L(r))*,
       (d)(r)是正规式,表示的集合仍然是L(r)。                                   
       括弧用来改变运算的先后次序!

可用正规式描述(其结构)的语言称为 正规语言 或 正规集



作者:SnorlaxSE
链接:https://www.jianshu.com/p/eb63d31ad638/
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值