当前位置: 首页 > news >正文

AtCoder Beginner Contest 433 (A~D)

2025.11.23 星期日 晴

工作之后感觉变成了一个fw了,生活重心逐步向工作靠近,有一种被体制化的感觉。我现在的工作对比大多数人来说算是非常好了,但我依然觉得 工作是一件束缚人自由的工作。什么时候我才可以自由地工作,随心所欲地生活呢?

ABC 433

A

# -*- coding: utf-8 -*-
# !/usr/bin/env python"""
@Author : Liang2003
@Time   : 2025/11/23 10:48https://atcoder.jp/contests/abc433/tasks/abc433_a题意: 是否存在一个W 使得 (X+W) = Z * (Y+W)X - Z*Y = (Z-1) * W"""def main():X,Y,Z = map(int,input().split())res1 = X - Z*Yres2 = Z - 1# print(res1)# print(res2)if X == Y*Z:print("Yes")returnif res1 < 0 :print("No")returnelse:if res1 % res2 == 0:print("Yes")else:print("No")if __name__ == "__main__":main()

B

# -*- coding: utf-8 -*-
# !/usr/bin/env python"""
@Author : Liang2003
@Time   : 2025/11/23 11:03https://atcoder.jp/contests/abc433/tasks/abc433_b题意:给出一个队列,对于位置i,找到左边 比位置i大的第一个数的位置思路:单调栈,对于位置i,如果栈顶元素 <= 该位置元素就pop,一直找到 大于该位置的元素"""def main():n = map(int,input())num_list = list(map(int,input().split()))stack = []top = 0for (idx,num) in enumerate(num_list):while top > 0 and num_list[stack[top-1]] <= num:stack.pop()top -= 1if top > 0 :print(stack[top-1]+1)else:print(-1)stack.append(idx)top += 1if __name__ == "__main__":main()

C

# -*- coding: utf-8 -*-
# !/usr/bin/env python3"""
@Author : Liang2003
@Time   : 2025/11/23 11:21题目:统计字符串中满足条件的子串数量
条件:子串长度为偶数,前一半字符相同,后一半字符相同,且后一半字符 = 前一半字符 + 1
"""def main():# 读取输入s = input().strip()if not s:  # 处理空字符串print(0)return# 在字符串末尾添加哨兵字符,便于处理边界s = s + " "# 将连续相同字符分组,存储为 (字符, 连续出现次数)char_groups = []current_char = s[0]current_count = 1# 从第二个字符开始遍历(跳过索引0)for char in s[1:]:if char == current_char:current_count += 1else:char_groups.append((int(current_char), current_count))current_char = charcurrent_count = 1# 统计满足条件的子串数量result = 0# 遍历相邻的字符组for i in range(len(char_groups) - 1):current_digit, current_count = char_groups[i]next_digit, next_count = char_groups[i + 1]# 检查是否满足条件:后一个字符 = 前一个字符 + 1if next_digit == current_digit + 1:# 取两个连续段的最小长度作为可形成的子串数量result += min(current_count, next_count)print(result)if __name__ == "__main__":main()

D

# -*- coding: utf-8 -*-
# !/usr/bin/env python"""
@Author : Liang2003
@Time   : 2025/11/23 11:40https://atcoder.jp/contests/abc433/tasks/abc433_d题意: 问一个数组中有多少对数(i,j),使得A[i]和A[j] 拼接起来是M的倍数思路:
A数组最大的数 是1e9,有十位,那么处理出每个数 A[i]乘上10的 0到10次方 模M的余数。
对于A[i],假设它的长度为d,模M后为X,那么该数的贡献为 数组中的数乘上 10的d次方 后模M 为(M-X) 的数量
"""
from typing import List, Dictdef handle_mod(num:int,M:int,B:List[Dict[int,int]]):"""处理每个数 乘从10的1次方到10次方 模M的余数 ,统计各个数位,各余数的值:param num::param M::param B::return:"""x = num % My = 10 % Mfor i in range(1, 11):z = x * y % MB[i][z] = B[i].get(z, 0) + 1# print("B[{}][{}]:{}".format(i,z,B[i][z]))y = y * 10 % Mdef main():n,M = map(int,input().split())nums = list(map(int,input().split()))B = []for i in range(0,11):B.append({})res = 0for num in nums:handle_mod(num,M,B)for num in nums:d = len(str(num))m = num % M# print(d,m, B[d].get((M - m)%M,0))res = res + B[d].get((M-m)%M, 0)print(res)if __name__ == "__main__":main()
http://www.rkmt.cn/news/58082.html

相关文章:

  • 2025年推荐几家短视频拍摄顾客好评榜
  • 2025年优秀的餐饮设计设计服务排行榜
  • 2025年11月留学生回国求职机构避坑指南:五家主流机构横向对比
  • informix数据库怎样优化存储
  • 2025年可靠的工厂环保咨询行业专家权威推荐榜
  • 2025年热门的高压控制盒高压直流接触器TOP品牌厂家排行榜
  • 2025年11月主流留学生求职专家对比排行榜
  • 2025年比较好的私有化视频会议优质服务榜
  • 2025年知名的中亚获客企业数字化获客解决方案
  • 2025年质量好的不锈钢二段力铰链TOP实力厂家推荐榜
  • 2025年11月海外就业机构市场报告:知名平台服务特色与选择策略
  • 2025年评价高的园区目视化规划最新用户好评榜机构
  • 2025年知名的平面VI设计创意视觉识别方案榜
  • 2025年机械密封厂家最新十大推荐榜,机械密封,机械密封件,釜用机械密封,机械密封维修,双端面机械密封公司行业口碑优选指南
  • P23_ 优化器(一)
  • 2025年评价高的光通信检测仪器实力厂家TOP推荐榜
  • 2025年热门的孤独症特教设备厂家最新实力排行
  • 2025年口碑好的贴片盖子行业内知名厂家排行榜
  • 段式管理提供了“程序视角”的内存视图
  • 2025年热门的烤漆龙骨TOP实力厂家推荐榜
  • 2025年知名的10盘热风旋转炉厂家最新推荐排行榜
  • 2025年质量好的家用烤箱搪瓷内胆款TOP实力厂家推荐榜
  • 2025年靠谱的好习惯冬令营青少年成长力榜
  • 2025年质量好的天冬聚脲涂料最新TOP品牌厂家排行
  • 2025年11月本土公关公司推荐:知名榜单与选择指南
  • 2025年北京大宅门装修公司深度解析:装修行业区域深耕者的运营模式剖析
  • 2025年北京大宅门装修公司:深度解析其技术工艺与施工优势
  • 2025年11月外企求职机构推荐榜单:一份基于市场数据的权威选择指南
  • 2025年热门的净化材料净化板行业内口碑厂家排行榜
  • 2025年评价高的pfa管厂家推荐及选购参考榜