题目描述In the land of Hedonia the official language is Hedonian. A Hedonian professor had noticed that many of her students still did not master the syntax of Hedonian well. Tired of correcting the many syntactical mistakes, she decided to challenge the students and asked them to write a program that could check the syntactical correctness of any sentence they wrote. Similar to the nature of Hedonians, the syntax of Hedonian is also pleasantly simple. Here are the rules:
0.The only characters in...
题目描述任何一个大于1的自然数n,总可以拆分成若干个小于n的自然数之和。当n=7共14种拆分方法:7=1+1+1+1+1+1+17=1+1+1+1+1+27=1+1+1+1+37=1+1+1+2+27=1+1+1+47=1+1+2+37=1+1+57=1+2+2+27=1+2+47=1+3+37=1+67=2+2+37=2+57=3+4total=14
输入输入一个待拆分的整数N(N<=8)。
输出输出各种拆分的方案。
样例输入14
样例输出12341+1+1+11+1+21+32+2
题解1234567891011121314151617181920212223242526272829303132333435363738#include <iostream>using namespace std;int n;int a[100000] = { 1};//输入的数的...
题目描述有三根杆子A,B,C。A杆上有N个(N>1)穿孔圆环,盘的尺寸由下到上依次变小。要求按下列规则将所有圆盘移至C杆:
每次只能移动一个圆盘;
大盘不能叠在小盘上面。
提示:可将圆盘临时置于B杆,也可将从A杆移出的圆盘重新移回A杆,但都必须遵循上述两条规则。
问:怎么移?最少要移动多少次?
输入一个整数 n ,代表汉诺塔层数 (n<=10)
输出移动的方式和最少需要的步数
样例输入13
样例输出12345678移动圆盘:1从盘a到盘c移动圆盘:2从盘a到盘b移动圆盘:1从盘c到盘b移动圆盘:3从盘a到盘c移动圆盘:1从盘b到盘a移动圆盘:2从盘b到盘c移动圆盘:1从盘a到盘c7
题解1234567891011121314151617181920212223242526#include<stdio.h>#include<stdlib.h>void hanoi(int n, char A, char B, char C) { if (n == 1) { printf("移...
题目描述用一个1*3的骨牌去覆盖一个3*n的长方形,求所有可能的方案数,n的范围(n的范围 1<=n<=1000)方案数请输出对$1000000007$取模的结果
输入n
40% 数据 n<=20
80% 数据 n<=100
100%的数据 n<=1000
输出所有可能方案数 对$1000000007$取模的结果
样例输入13
样例输出12
提示递推,动态规划
题解12345678910111213141516import java.math.BigInteger;import java.util.Scanner;public class Main { final static BigInteger MOD = BigInteger.valueOf(1000000007); public static void main(String[] args) { Scanner cin = new Scanner(System.in); B...
转自:
使用 Cloudflare WARP 作为 V2**y/Sh****socks 出站(落地)连接 回声 (iecho.cc)
OpenAI is not available in your country
前言ChatGPT 最近很火,但不幸地是 OpenAI 屏蔽了中国地区和常见数据中心 IP 来源。这意味着,如果你在国内,想要使用 ChatGPT,除了需要一张外币信用卡/借记卡,还需要一个可以访问 OpenAI 的代理 IP。WARP 是 Cloudflare 提供的免费 VPN 服务,基于 WireGuard 协议,VPN 对端为启用了 anycast 的 Cloudflare CDN。WARP 的 IP 不在一些服务商的黑名单内,所以可以借助 WARP 来正常访问 ChatGPT 和 OpenAI 相关接口,以及其他流媒体服务(以解锁本地内容的版权限制),比如 Netflix、Hulu、Disney+。
配置一般来说我们无法在中国境内使用 WARP,但可以使用自有的境外 VPS 将代理流量路由至 WARP。基本思路是:将 WireGua...
题目描述一、实验目的
通过设计编制调试一个具体的词法分析程序,加深对词法分析原理的理解。并掌握在对程序设计语言源程序进行扫描过程中将其分解为各类单词的词法分析方法。
二、实验内容
编制一个读单词过程,从输入的源程序中,识别出各个具有独立意义的单词,即基本保留字、标识符、常数、运算符、分隔符五大类。并依次输出各个单词的内部编码及单词符号自身值。(遇到错误时可显示“Error”,然后跳过错误部分继续显示)。
三、实验原理或算法
1、****词法分析器的功能和输出格式
词法分析器的功能是输入源程序,输出单词符号。词法分析器的单词符号常常表示成以下的二元式(单词种别码,单词符号的属性值)。本实验中,采用的是一类符号一种别码的方式。
2、单词的BNF****表示
<标识符>-> <字母><字母数字串>
<字母数字串>-><字母><字母数字串><数字><字母数字串><下划线><字母数字串>ε
<无符号整数>-> <数字><数字...
题目描述输入一个字符串,判断其是否是C的合法标识符。C语言合法标识符格式为 第一个符号是字母或者下划线_,后面可以跟字母、下划线或者数字,不得含有其他符号
输入输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过150的字符串。
输出对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出”yes”,否则,输出“no”。
样例输入1234312ajffi8x_aff ai_2
样例输出123noyesno
题解1234567891011121314151617181920212223242526#include<stdio.h>#include<string.h>int main() { int n, i; char a[150]; while (scanf("%d", &n) != EOF) { getchar(); while (n--) { gets(a...
题目描述输入一个字符串,内含数字和非数字字符,如:
$$A123x456.17960?302t ab5876$$
将其中连续的数字作为一个整数,依次存放在一个整型数组中(假设数组名为a)。如上例所示,将$123$放在a[0]中,$456$放在a[1]中,$17960$放在a[2]中,……..,同时统计整数的个数并输出相关的信息。
输入一行字符串(以回车结束),可含空格
输出输出数据分多行,每行一个数据。其中第一行是字符串中包含的整数个数,从第二行开始依次输出各个整数。
样例输入1A123x456.17960?302t ab5876
样例输出1234565123456179603025876
提示学会将一个数字字符序列(数字字符串)转换成一个整数
如”456”–>456
可按十进制数制进行转换
题解123456789101112131415161718192021222324252627#include<stdio.h>#include<stdlib.h>#include<string.h>#include<math.h>i...
题目描述在进行文法分析的时候,通常需要检测一个单词是否在我们的单词列表里。为了提高查找和定位的速度,通常都画出与单词列表所对应的单词查找树,其特点如下:
1.根结点不包含字母,除根结点外每一个结点都仅包含一个大写英文字母;
2.从根结点到某一结点,路径上经过的字母依次连起来所构成的字母序列,称为该结点对应的单词。单词列表中的每个单词,都是该单词查找树某个结点所对应的单词;
3.在满足上述条件下,该单词查找树的结点数最少。
4.例如图3-2左边的单词列表就对应于右边的单词查找树。注意,对一个确定的单词列表,请统计对应的单词查找树的结点数(包含根结点)。
输入为一个单词列表,每一行仅包含一个单词和一个换行/回车符。每个单词仅由大写的英文字母组成,长度不超过63个字母 。文件总长度不超过32K,至少有一行数据。
输出仅包含一个整数,该整数为单词列表对应的单词查找树的结点数。
样例输入12345678AANASPASASCASCIIBASBASIC
样例输出113
题解12345678910111213141516171819202122#include<iostre...
题目描述现代诗如蚯蚓断成好几截都不会死字符串断成好几截有可能完全一样请编写程序输入字符串输出该字符串最多能断成多少截完全一样的子串
输入一行,一个字符串
输出一行,一个正整数表示该字符串最多能断成的截数
样例输入1abcabcabcabc
样例输出14
提示样例说明 最多能断成四个“abc”,也就是abc重复四遍便是原串 同时也能断成两个“abcabc” 最坏情况是断成一个原串“abcabcabcabc” 数据规模和约定 字符串长度$<= 1000$
题解123456789101112131415161718192021222324252627#include<iostream>using namespace std;int main() { string s; cin >> s; int len = int(s.length()); for (int i = 1; i <= len / 2; i++) { if (len % i == 1) { ...