2023 得物笔试题 0829
笔试时间:2023年8月29日 秋招
第一题
题目:Cheems的漂亮糖葫芦
小狗Cheems在街边买到了一串糖葫芦,这串糖葫芦是由n个大写字母构成的。Cheems觉得这串糖葫芦虽然美味,却并不一定能称得上漂亮。当糖葫芦中包含了一串长度为X的连续子串,满足正序读与倒序读一模一样时(即是一串回文串),它会觉得这整串糖葫芦是漂亮的。
输入描述
第一行两个以空格隔开的正整数n和x,表示糖葫芦串长度和Cheems对于子串要求的长度。
第二行一个长为n的仅包合大写字母的字符串s,代表糖葫芦
1<=n,x<=5000
输出描述
如果这串糖葫芦是漂亮的,输出1,否则输出0。
样例输入
6 2
AACBBE
样例输出
1
提示:可以找到称在子串“AA",长度为2,且正着读与倒着读一模一样.
参考题解
C++:
#include <iostream> #include <string> using namespace std; int main() { int n, x; cin >> n >> x; cin.ignore(); string s; getline(cin, s); if (x == 1) { cout << "1" << endl; return 0; } for (int i = 0; i <= n - x; i++) { int left = i; int right = i + x - 1; while (left < right) { if (s[left] == s[right]) { left++; right--; } else { break; } } if (left >= right) { cout << "1" << endl; return 0; } } cout << "0" << endl; return 0; }
Java:
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int x = sc.nextInt(); sc.nextLine(); String s = sc.nextLine(); if(x == 1){ System.out.println(1); return; } for(int i = 0; i <= n - x; i++){ int left = i; int right = i + x - 1;
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
2023 秋招笔试题汇总解析 文章被收录于专栏
2023秋招各大笔试题汇总,c++,java,python多种语言分析,解答。