把输入当作字符串来处理即可
-
判断字符串长度是否为偶数
-
判断字符串中是否只包含4和7
-
判断字符串前半部分之和是否等于后半部分之和(其实直接用ASCII码进行计算,不必换算成整数再计算也可,因为前后两半字符串的长度是相同的)
#include<bits/stdc++.h>
using namespace std;
int main() {
string s;
cin >> s;
if (s.size() % 2) {
puts("No");
return 0;
for (char c : s) {
if (c != '4' && c != '7') {
puts("No");
return 0;
int cnt = 0;
for (int i = 0; i < s.size() / 2; i++) {
cnt += s[i] - '0';
for (int i = s.size() / 2; i < s.size(); i++) {
cnt -= s[i] - '0';
puts(cnt ? "No" : "YES");
return 0;
小明投篮,罚球线投球可得1分,在三分线内投篮得分可以得到2分,在三分线以外的地方投篮得分可以得到3分,连续投
进得分累计,一旦有一个球没投进则得分清零,重新计算。现给出所有得分记录(清零不计入得分),请你计算一下小明
最多连续投进多少个球?
遍历每次的得分,如果当前得分不大于上次得分,则视为“头球中断”
否则视为“连续进球”
统计一下最大的连续进球次数即可
#include <bits/stdc++.h>
using namespace std;
int main() {
int ans = 0;
int thisCnt = 0;
int lastScore = 0;
int n;
cin >> n;
while (n--) {
int t;
cin >> t;
if (t <= lastScore) {
lastScore = 0;
thisCnt = 0;
thisCnt++;
ans = max(ans, thisCnt);
lastScore = t;
cout << ans << endl;
return 0;
X国发行货币最高面额为n。 次高面额为n的因子。 以此类推。 X国最多发行多少种货币。
只需要按照题目的意思,在n不为质数的时候,不断除以“大于1的最小因子”即可
首先,判断一个数
小明选择了一个正整数X,然后把它写在黑板上。然后每一天他会擦掉当前数字的最后一位,直到他擦掉所有数位。 在整个过
程中,小明会把所有在黑板上出现过的数字记录下来,然后求出他们的总和sum. 例如X = 509, 在黑板上出现过的数字依次
是509, 50, 5, 他们的和就是564. 小明现在给出一个sum,小明想让你求出一个正整数X经过上述过程的结果是sum.
509能按照题目描述得到564,但是给你564怎么反推出来509呢?
我们来看一下564的构成。
while (k) {
ll yu = n / k;
ans = ans * 10 + yu;
n -= yu * k;
k /= 10;
cout << ans << endl;
return 0;
同步发文于CSDN,原创不易,转载请附上原文链接哦~
Tisfy:https://letmefly.blog.csdn.net/article/details/128975414
各位卷王们好! 基于最近比较经常接触算法相关的编程题,所以于前天,也就是CSDN第27期周赛。报名参加了,为了记录一下自己在哪里跌倒,特此打算新开一个栏目,名为: **`CSDN周赛解析`** 。
希望大伙不要吝啬,三连支持一下呀!
1、最后一位
牛牛选择了一个正整数X,然后把它写在黑板上。然后每一天他会擦掉当前数字的最后一位,直到他擦掉所有数位。 在整个过程中,牛牛会把所有在黑板上出现过的数字记录下来,然后求出他们的总和sum.
例如X = 509, 在黑板上出现过的数字依次是509, 50, 5, 他们的和就是564.
牛牛现在给出一个sum,牛牛想让你求出一个正整数X经过上述过程的结果是sum.
abc...
二分法定义
对于区间[a,b]上连续且存在f(a)*f(b)的函数f=y(x),通过不断地将函数f(x)的零点所在的区间一分为二,使得区间的两个端点逐步靠近零点,进而得到零点近似值的方法叫做二分法。
最经典的二分法用于求解数学上函数的零点,例如求解3x3-13x+2=0在区间[1,9]的根,具体求解很简单,无非是逐渐二分逼近零点,感兴趣的读者可以自己尝试。
这里我要说的是,面对一个具体的...
根据提供的引用内容,CSP-J2021复赛有两道题目,分别是分糖果和小熊的果篮。
对于第一题分糖果,题目来源是CCF,难度为入门。根据给出的代码,这是一个基于循环的算法,通过遍历[l,r]区间内的数,计算数对n取模后的最大值。具体的实现细节可以参考引用中的代码。这道题目属于入门级别,比较简单。
第二题是关于小熊的果篮。给定一个长度为n的数组a,其中连续的相同元素被视为一个块,要求按照块的顺序输出每个块的头元素,并删除已输出的元素。具体的实现细节可以参考引用中的代码。这道题目需要使用双链表来处理,时间复杂度为O(n)。
综上所述,CSP-J2021复赛的题目包括分糖果和小熊的果篮,具体的解题思路和代码实现可以参考上述引用内容。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [[CSP-J 2021]比赛题解](https://blog.csdn.net/weixin_56550385/article/details/126811201)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [新鲜出炉的 CSP-J 2021 复赛题目 题解](https://blog.csdn.net/qq_23109971/article/details/121024436)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]