[刷题] PTA 7-32 说反话-加强版】的更多相关文章

Description 同OJ3522 数据范围:n<=100000 Solution dp的设计见[刷题]BZOJ 3522 [Poi2014]Hotel 然后发现dp的第二维与深度有关,于是长链剖分就可以优化成 \(O(n)\) 的了 不会写指针,所以写deque #include<bits/stdc++.h> #define ui unsigned int #define ll long long #define db double #define ld long double #…
题目描述: 给定一个英语句子,各个单词之间用空格分隔.要求编写程序,将所有单词倒序输出 输入示例: Hello World Here I Come 输出示例: Come I Here World Hello 1 #include <stack> 2 #include <string> 3 #include <iostream> 4 5 using namespace std; 6 7 int main(){ 8 stack<string> v; 9 stri…
题目: 7-63 查验身份证 (15 分)  一个合法的身份证号码由17位地区.日期编号和顺序编号加1位校验码组成.校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2}:然后将计算的和对11取模得到值Z:最后按照以下关系对应Z值与校验码M的值: Z:0 1 2 3 4 5 6 7 8 9 10 M:1 0 X 9 8 7 6 5 4 3 2 现在给定一些身份证号码,请你验证校验码的有效性,并输出有问题的号码.…
链表逆序 1 #include<iostream> 2 #include<stdio.h> 3 #include<algorithm> 4 using namespace std; 5 #define MAXSIZE 1000010 6 7 struct node { 8 int data; 9 int next; 10 } node[MAXSIZE]; 11 12 int List[MAXSIZE]; 13 int main() { 14 int First,n,k;…
用栈实现树遍历 1 #include<stdio.h> 2 #include<string.h> 3 #define MAXSIZE 30 4 5 int Pre[MAXSIZE],In[MAXSIZE],Post[MAXSIZE]; 6 void solve(int preL,int inL,int postL,int n); 7 void outPut(int p[],int n); 8 9 int main(){ 10 int n,tmp,i,j = 0; 11 int to…
我的程序: 1 #include<stdio.h> 2 #include<string.h> 3 #define N 50 4 char token[]= {'+','-','*','/','(',')'}; 5 6 int istoken(char c) { 7 int i; 8 for(i=0; i<strlen(token); i++) { 9 if(token[i]==c) return 1; 10 } 11 return 0; 12 } 13 14 int main…
程序: 1 #include <stdio.h> 2 #include <stdlib.h> 3 typedef struct TreeNode *Tree; 4 struct TreeNode{ 5 int v; 6 Tree Left,Right; 7 int flag; 8 }; 9 Tree NewNode(int V){ 10 Tree T=(Tree)malloc(sizeof(struct TreeNode)); 11 T->v = V; 12 T->Le…
程序: 1 #include <stdio.h> 2 #include <queue> 3 #define MaxTree 20 4 #define Null -1 5 using namespace std; 6 7 struct TreeNode { 8 int Left; 9 int Right; 10 } T[MaxTree]; 11 int N,check[MaxTree]; 12 int count = 0; 13 14 int BuildTree(struct Tre…
程序: 1 #include <stdio.h> 2 #define MaxTree 10 3 #define ElementType char 4 #define Tree int 5 #define Null -1 6 7 struct TreeNode { 8 ElementType Element; 9 Tree Left; 10 Tree Right; 11 } T1[MaxTree],T2[MaxTree]; 12 int N,check[MaxTree]; 13 14 Tree…
程序: 1 #include <stdio.h> 2 #include <stdlib.h> 3 4 typedef int ElementType; 5 typedef struct Node *PtrToNode; 6 struct Node { 7 ElementType Data; 8 PtrToNode Next; 9 }; 10 typedef PtrToNode List; 11 12 List Read(); /* 细节在此不表 */ 13 void Print(…
模拟栈进出 方法一: 1 #include<stdio.h> 2 #define MAXSIZE 1000 3 4 typedef struct{ 5 int data[MAXSIZE]; 6 int top; 7 }SqStack; 8 9 int InitStack(SqStack *s){ 10 s->top=-1; 11 return 0; 12 } 13 14 int Push(SqStack *s,int e){ 15 if(s->top==MAXSIZE) retur…
7-64 最长对称子串 我的代码: 1 #include<stdio.h> 2 #include<string.h> 3 #define N 1001 4 5 int main() { 6 char str[N]; 7 int len; 8 gets(str); 9 len=strlen(str); 10 int i=0,j=0,sys=0,lng=1,temp=0; 11 for(i=2; i<len; i++) { 12 if(sys==0) { 13 j=i-2; 14…
采用希尔排序 1 #include <stdio.h> 2 3 #define MAXN 10 4 typedef float ElementType; 5 6 ElementType Median( ElementType A[], int N ); 7 8 int main () 9 { 10 ElementType A[MAXN]; 11 int N, i; 12 13 scanf("%d", &N); 14 for ( i=0; i<N; i++ )…
要求: 实现一个打印非负整数阶乘的函数 N是用户传入的参数,其值不超过1000.如果N是非负整数,则该函数必须在一行中打印出N!的值,否则打印"Invalid input" 1 #include <stdio.h> 2 3 void Print_Factorial( const int N); 4 int main(){ 5 int N; 6 scanf("%d",&N); 7 Print_Factorial(N); 8 return 0; 9…
要求: 实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144.676等. 函数接口定义: int IsTheNumber ( const int N ); 其中N是用户传入的参数.如果N满足条件,则该函数必须返回1,否则返回0. 1 #include <stdio.h> 2 #include <math.h> 3 4 int IsTheNumber ( const int N ); 5 6 int main() 7 { 8 int n1, n…
Description [题目描述]同3545 Input 第一行三个数N,M,Q. 第二行N个数,第i个数为h_i 接下来M行,每行3个数a b c,表示从a到b有一条困难值为c的双向路径. 接下来Q行,每行三个数v x k,表示一组询问.v=v xor lastans,x=x xor lastans,k=k xor lastans.如果lastans=-1则不变. Output 同3545 Sample Input Sample Output HINT [数据范围]同3545 这里附上354…
程序: 1 #include<stdio.h> 2 #include<string.h> 3 #define N 81 4 5 int main() { 6 char ch[N],temp[N]; 7 int i,cnt,lng=0; 8 scanf("%d",&cnt); 9 gets(ch); 10 strcpy(temp,ch); 11 for(i=0; i<cnt; i++) { 12 gets(ch); 13 if(strlen(ch)&…
leecode 刷题(32)-- 链表的中间节点 描述: 给定一个带有头结点 head 的非空单链表,返回链表的中间结点. 如果有两个中间结点,则返回第二个中间结点. 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[3,4,5]) 返回的结点值为 3 . (测评系统对该结点序列化表述是 [3,4,5]). 注意,我们返回了一个 ListNode 类型的对象 ans,这样: ans.val = 3, ans.next.val = 4, ans.next.next…
PTA刷题记录 仓库地址: https://github.com/Haorical/Code/tree/master/PTA/GPLT 两周之内刷完GPLT L2和L3的题,持续更新,包括AK代码,坑点,和少量评论 用一周刷完了l2的40道题 刷题笔记 dj vis数组置为真 链表判空不用数量,判断结尾 注意数据类型比较,段错误可能int double比较/无限循环/数组给小了 指针定义时赋空 镜像树left right互换就行 union()时间过长 建议不用 bfs入队判空 并查集有时不用路…
说反话-加强版(20 分) 给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出. 输入格式: 测试输入包含一个测试用例,在一行内给出总长度不超过500 000的字符串.字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用若干个空格分开. 输出格式: 每个测试用例的输出占一行,输出倒序后的句子,并且保证单词间只有1个空格. 输入样例: Hello World Here I Come 输出样例: Come I Here World Hello #inc…
刷题与Z老师的头发 (10 分) 在Pintia上,每天Z老师出题.小盆友们刷题.Z老师的头发遵从以下规律: 1.每天生长出60根头发: 2.每出一道题,减少20根头发: 3.每天结束时统计累积做题情况: (1)若出的题全部被做出来,则Z老师产生“没题焦虑”,减少30根头发: (2)若小盆友做出来的题少于50%,则Z老师产生“学生不用功焦虑”,减少70根头发. 现给定连续N天的出题.刷题情况,请计算Z老师头发的变化情况. 输入格式: 第一行输入一个正整数N (N<20): 接下来N行,每行输入两…
考虑到PAT甲级考试和开学后的XCPC比赛,决定寒假把PAT (Advanced Level) Practice刷完,进度条会在这篇博客下更新.由于主要以记录为主,大体上不会像单篇题解那么详细,但是对问题的思考,代码的简洁性.可读性还是有保障的,欢迎看到的小伙伴和我讨论 2021.1.10 1001 A+B Format (20分) 很久没写题了,没想到卡了半个小时,惭愧.这里是要把结果用逗号分隔成三组,即以千为单位,不足的话则不必要填逗号,我最多只添了一个逗号,要看清题目意思再动笔 #incl…
Preface 菜鸡HL终于狗来了他的省选停课,这次的时间很长,暂定停到一试结束,不过有机会二试的话还是可以搞到4月了 这段时间的学习就变得量大而且杂了,一般以刷薄弱的知识点和补一些新的奇怪技巧为主. 偶尔也会打一些比赛找找手感(比如HHHOJ的比赛,Luogu比赛,以及comet OJ上之前的CCPC题) CF和CC看情况,主要是我真的不太喜欢读英文题的恐怖感觉233 希望这段时间的努力可以让我不跪省选吧 2-26 早上晨跑完了就和杨浩讲了停课的事,不出意外地很轻松就通过了. 然后回班拿了点东…
大四狗找工作,要刷题了,leetcode上面题目比较适合面试算法类题目,也不纯粹为了蒙题,锻炼一下面试类型的思维 Single Number: 有N个数,其中只有一个数出现了一次,其他都是两次,找出那个数 把所有数求一下异或 Maximum Depth of Binary Tree: 求树的最大深度 递归遍历一遍 Same Tree: 给两个树的根节点,看两棵树是否相同 两棵树同时遍历一遍 Reverse Integer: 输出这个数倒过来的数 注意负数情况,模拟一下即可 Best Time t…
刷题链接:https://www.patest.cn/contests/pat-a-practise 1001 #include <iostream> #include <stdio.h> using namespace std; ]; int main() { int a,b,sum,index; while(scanf("%d%d",&a,&b)!=EOF){ sum=a+b; ){ printf("-"); sum=-s…
接下来要滚去bzoj刷usaco的题目辣=v=在博客记录一下刷题情况,以及存一存代码咯.加油! 1.[bzoj1597][Usaco2008 Mar]土地购买 #include<cstdio> #include<algorithm> #include<cstring> using namespace std; ; int n,cnt,q[N]; long long x[N],y[N],f[N]; struct node{long long x,y;}a[N]; bool…
Preface 老叶说了高中停课但是初中不停的消息后我就为争取民主献出一份力量 其实就是和老师申请了下让我们HW的三个人听课结果真停了 那么还是珍惜这次机会好好提升下自己吧不然就\(AFO\)了 List Luogu P4198 楼房重建 把高度化为斜率,然后就是个动态最长上升子序列的问题了,线段树上二分即可解决,而且可以做到\(O(n\log n)\) NOIP模拟赛10.24 实力翻车,T1主席树裸题切了,T2想了贪心+前缀和+二分正解,最后1min写完发现忘记判边界了炸到60,T3以为很难…
376. Wiggle Subsequence               自己没想出来,看了别人的分析. 主要是要分析出升序降序只跟临近的2个决定.虽然直觉上不是这样. 455. 分发饼干                           非常重要的一个题目,主要是要通过这个题目来彻底理解for 循环里面动态变化时候会发生的bug问题.问题本身是trivaial的. class Solution: def findContentChildren(self, g, s): ""&qu…
16-3-25  —— bzoj 2049 [Sdoi2008]Cave 洞穴勘测:LCT入门 bzoj 2002 [Hnoi2010]Bounce 弹飞绵羊:LCT Tsinsen A1303. tree(伍一鸣):LCT+传标 bzoj 2843 极地旅行社:LCT练手题 bzoj3091 城市旅行:LCT+数学分析 16-3-26 ——14 bzoj 3732 Network:最短路+倍增 | LCT bzoj 2594 [Wc2006]水管局长数据加强版:LCT维护最小生成树 bzoj2…
title: hdu-5023线段树刷题 date: 2018-10-18 13:32:13 tags: acm 刷题 categories: ACM-线段树 概述 这道题和上次做的那道染色问题一样,,,这次主要是看看我再过去两三天之后,,大概凭借以前的记忆敲出来得多长的时间,,,, 结果是,,,大体的框架没问题了,,,,一遍下来编译也没问题,,,但是,,细节问题有两个,,, 数组写成了1e6而不是1e6+10虽然对本题没什么影响,, 建树中的初始化操作时染色初始化为2,,,所以应该是从右往左数…