首页 > TAG信息列表 > SDUT
SDUT 2022 Autumn Team Contest 7th
1.J题:给你T组数据,每一组数据给你一个区间,让你求这个区间的范围,区间的起始时间和终止时间可能被包含或重复 思路:思路的话,就是直接把给定的两个区间的之间的数包括端点存到vector去重,然后直接输出个数即可,或者直接存到set里直接系统去重也可 #include <iostream> #includeSDUT 2022 Summer Individual Contest - 9 (补题)
题目链接: Problem - H - Codeforces 题意: 给定一个数组,找出第一个比q[i]大的数q[j]记录数据输出 分析: 对于一个任意的q[i]来说,若i<j且q[i]<q[j]那么答案一定不会在j后面出现,若i<j且q[i]>q[j]答案也不会在j后小于q[j]的元素中出现,所以对于每个元素可以删除其后面的元素,使用栈倒序操7-6 sdut-oop-9 计算长方形的周长和面积(类和对象) --python
知识点: python创建多个构造方法 使用classmethod 将init的参数设为可变类型,在init语句中判断 class Rect: __length = 0 __width = 0 def __init__(self, l, w): self.__length = l self.__width = w @classmethod def initsec(self, l):7-2 sdut-列表元素个数的加权和(1)
递归 def sum(n,deep): sums = 0 # print(deep) for i in n: if isinstance(i, list): sums += sum(i,deep+1) if isinstance(i, int): sums += deep return sums a = eval(input()) j = 0 print(sum(a,1))7-12 sdut-集合相等问题 - -扩展
扩展: 蒙特卡罗算法: 蒙特卡罗方法(英语:Monte Carlo method),也称统计模拟方法,是1940年代中期由于科学技术的发展和电子计算机的发明,而提出的一种以概率统计理论为指导的数值计算方法。是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法。 解释: 假设我们要计算一个不规则图7-10 sdut-两数之和
原文 知识点: 这个else用的很灵性,学习到了 list的index的使用 l=[int(x) for x in input().split()] num=int(input()) d={} for i in l: d[i]=num-i for key,value in d.items(): if key in l and value in l: print(l.index(key),l.index(value)) br7-2 sdut-统计两个字符串中相同的字符个数
法1: a = input() b = input() sum = 0 for i in set(a): if i in set(b): sum += 1 print(sum) 法2:使用dict 正确代码; a=input() b=input() mp1={} mp2={} for i in a: mp1.setdefault(i,1) for j in b: mp2.setdefault(j,1) ans=0 for i in mp1.keys()7-10 sdut-猴子选大王
好像是个约瑟夫环, 编程能力确实提高了,随便一想就写出来了..... 要是之前还要搜板子 a=int(input()) sta=list(range(1,a+1)) # print(sta) k=1 indx=0 while len(sta)>1: k+=1 indx=(indx+1)%len(sta) if k==3: sta.pop(indx) k=1 indx=(indx7-6 sdut-字母替换
方法一:使用list judge = [] for i in range(26): judge.append( chr(65+25-i) ) # print(judge) n= input() n= [judge[ord(i)-65] if 'A'<=i<='Z' else i for i in n] print(''.join(n)) 方法2:使用map judge = {} for i in range(26):7-7 sdut-输出字母在字符串中位置索引
知识点: 逆序遍历range:只需要[::-1]即可 (从头到尾切片,步长设置为-1) 代码 s=input() a,b=input().split() for i in range(len(s))[::-1]: if s[i]==a or s[i]==b: print("{} {}".format(i,s[i]))7-13 sdut-九九乘法表
注意点:不换行输出 代码 while True: try: n=int(input()) ans=1 for k in range(1,n+1): for i in range(1,k): print("{}*{}={}".format(i,k,i*k),end=" ") print("{}*{}={}".formSDUT 2022 Spring Team Contest——11(补题)
题目链接: Dyson Box - Gym 103118D - Virtual Judge (vjudge.net) 概述:给定方块的坐标,T时间内输出前T个方块下对齐与右对齐之后的边长 思路: 以下对齐为例: ans表示边长总数 用map存储每个x坐标的个数 对于第一个:ans+=4; 对于后面的方块:ans+=2;(两条边重合,减去) 判断mp[x-1]与mp[x+1]SDUT ACM OJ 实验二链表
A :顺序建立链表 #include<stdio.h> #include<stdlib.h> struct node { int data; struct node *next; }*head,*tail,*p,*q; int main () { head=(struct node *)malloc(sizeof(struct node)); head->next=NULL; tail=head; int n,i;SDUT-OJ-逆置正整数
#include <iostream> using namespace std; int main() { int a,b, c,n; cin>>n; a = n / 100; b = n / 10 % 10; c = n % 10; cout<<c * 100 + b * 10 + a; return 0; }SDUT数据结构PTA专题(实验八)题解
数据结构与算法A实验八排序 7-1 统计工龄 (20 分)7-2 寻找大富翁 (25 分)7-3 点赞狂魔 (25 分)7-4 插入排序还是归并排序 (25 分)7-5 逆序对 (15 分)7-6 第k数 (20 分)7-7 堆排序 (10 分)7-8 快速排序 (10 分)7-9 归并排序 (20 分)7-10 逆序对的数量 (20 分) 7-1 统计工7-12 sdut-sel-3-考考计算机(II) (10 分)
题目 考考计算机,由你来出题。题目格式形如:A+B的四则运算题,让计算机输出结果。 形如A+B的算式,A和B为整数,中间是+、-、*、/ 符号之一 。算式中间没有空格。 代码(python)7-4 sdut-oop-1 简单的复数运算 (10 分)
设计一个类Complex,用于封装对复数的下列操作: 成员变量:实部real,虚部image,均为整数变量; 构造方法:无参构造方法、有参构造方法(参数2个) 成员方法:含两个复数的加、减、乘操作。 复数相加举例: (1+2i)+(3+4i)= 4 + 6i 复数相减举例: (1+2i)-(3+4i)= -2 - 2i 复数相乘举例: (1+2i)*(3+4i)= -5SDUT —— 因式分解
因式分解 Description 将大于1的自然数N进行因式分解,满足N=a1a2a3…am。 编一程序,对任意的自然数N(1< N<=2,000,000,000),求N的所有形式不同的因式分解方案总数。如N=12,共有8种分解方案,他们分别是: 12=12 12=62 12=43 12=34 12=322 12=26 12=232 12=22*3 Input 输入只有一行SDUT递推题目
养兔子 #include <iostream> using namespace std; int M=1e3+10; int main() { int n; long long int f[M]; cin>>n; f[1]=1; f[2]=2; for(int i=3;i<=n;i++) { f[i]=f[i-1]+f[i-2]; } cout<<f[n]; return 0; } 母牛的故事 #include <stdioSDUT--数据结构实验之图论九:最小生成树(prim算法)
#include <iostream> #include<bits/stdc++.h> using namespace std; const int inf=0x3f3f3f3f; int main() { int m,n; while(~scanf("%d%d",&n,&m)) { int ma[120][120]= {0}; int dis[120]; bool visC 各位数字之和排序 SDUT
Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 给定n个正整数,根据各位数字之和从小到大进行排序。 Input 输入数据有多组,每组数据占一行,每行的第一个数正整数n,表示整数个数,后面接n个正整数。当n为0时,不作任何处理,输入结束。n<=10 Output 输出每组排C 小粉的难题 SDUT
Description 小粉和哈士奇是好朋友,一天,哈士奇去找小粉玩,但小粉还没做完功课。粉妈妈说只有做完功课才能出门,这可急坏了小粉,于是小粉让哈士奇和他一块做功课。其中有一道题是这样的: 给出一个正整数 n 和数字 m ( m 取值范围[0,9]中的一个数字),求 m 在 n 中出现的次数。 比如C 九九乘法表 SDUT
Description 九九乘法表是数学学习的基础,今天我们就来看看乘法表的相关问题。《九九乘法歌诀》,又常称为“小九九”,如下图所示。你的任务是写一个程序,对于给定的一个正整数 n ,输出“九九乘法表”的前 n 行。例如,输入 n 为 9,你的程序的输出将为下图: Input 输入包含多C 求某个范围的所有素数 SDUT
Description 求小于n的所有素数,按照每行10个显示出来。 Input 输入整数n(n<10000)。 Output 每行10个依次输出n以内(不包括n)的所有素数。如果一行有10个素数,每个素数后面都有一个空格,包括每行最后一个素数。 Sample Input 100 Output 2 3 5 7 11 13 17 19 23 29 31 37C 数据结构实验之链表一:顺序建立链表 SDUT
Description 输入N个整数,按照输入的顺序建立单链表存储,并遍历所建立的单链表,输出这些数据。 Input 第一行输入整数的个数N; 第二行依次输入每个整数。 Output 输出这组整数。 Sample Input 8 12 56 4 6 55 15 33 62 Output 12 56 4 6 55 15 33 62 Hint 不得使用数组!