clear cold water

原题链接OpenJudge - 2392:Clear Cold Water

自己做了做,感觉应该是对的,判题系统那边总共只有两人通过肯定是出问题了,用的c语言,大家可以参考一下,目前是初学者,有不对的欢迎指出。

#include<stdio.h>


typedef struct tree{
	int dis=1,lc=0,rc=0; //dis表示distance,lc表示leftchild,rc表示rightchild 
	
}tree;

void sub(int a,tree n[99999],int dep)//dep表示从上往下的深度,即距离 
{
	int p,q;
	
	if(n[a].lc!=0)
	{
	  p=n[a].lc;
	  dep++;
	  sub(p,n,dep);//进入新的一层深度要加一,出来之后深度减一
	  dep--;
    }
	if(n[a].rc!=0)
	{
	  q=n[a].rc;
	  dep++;
	  sub(q,n,dep);
	  dep--;
    }
    //递归遍历 
	n[a].dis+=dep;
	
}

int main()
{
	int nn,c,i;
	
	scanf("%d %d",&nn,&c);
	
	int e[c][3];
	tree n[(nn+1)];
	
	for(i=0;i<c;i++)
	{
		
			scanf("%d %d %d",&e[i][0],&e[i][1],&e[i][2]);
			n[e[i][0]].lc=e[i][1];
			n[e[i][0]].rc=e[i][2];//将所给的矩阵录入,并设置父子关系
	}
	sub(1,n,0);
	
	for(i=1;i<=nn;i++)
	{
		printf("%d\n",n[i].dis);
	}
	return 0;	
}

import turtle# 导入turtle库(模块) turtle.bgcolor("#ffff55") # 设置背景颜色为#ffff55,一种浅黄色 turtle.speed(0) # 设置绘图速度,参数为0时最快 turtle.delay(0) # 设置绘图的延迟时间,参数为0时,表示绘图没有延迟 ### ② 变量初始化设置 # 创建列表name,存放24节气中文名称 name=["雨水","惊蛰","春分", "清明","谷雨","立夏", "小满","芒种","夏至", "小暑","大暑","立秋", "处暑","白露","秋分", "寒露","霜降","立冬", "小雪","大雪","冬至", "小寒","大寒","立春"] # 创建列表en_name,存放24节气英文名称 en_name=["Rain Water","Awakening of Insects","Spring Equinox", "Pure Brightness","Grain Rain","Beginning of Summer", "Grain Buds","Grain in Ear","Summer Solstice", "Minor Heat","Major Heat","Beginning of Autumn", "End of Heat","White Dew","Autumn Equinox", "Cold Dew","Frost's Descent","Beginning of Winter", "Minor Snow","Major Snow","Winter Solstice", "Minor Cold","Major Cold","Beginning of Spring"] # 创建列表poem,存放诗词 # 没有对应的诗词,就定义为空字符串。如果不定义,调用时会报错 poem=["随风潜入夜 润物细无声","春雷响 万物长","春风如贵客 一到便繁华", "清明时节雨纷纷","风吹雨洗一城花","天地始交 万物并秀", "物至于此 小得盈满","家家麦饭美 处处菱歌长","绿筠尚含粉 圆荷始散芳", "荷风送香气 竹露滴清响","桂轮开子夜 萤火照空时","天阶夜色凉如水 坐看牵牛织女星", "春种一粒粟 秋收万颗子","露从今夜白 月是故乡明","漏钟仍夜浅,时节欲秋分", "萧疏桐叶上,月白露初团","风卷清云尽,空天万里霜","冻笔新诗懒写,寒炉美酒时温", "花雪随风不厌看,更多还肯失林峦","燕山雪花大如席,片片吹落轩辕台","邯郸驿里逢冬至,抱膝灯前影伴身", "小寒连大吕,欢鹊垒新巢","蜡树银山炫皎光,朔风独啸静三江","天地风霜尽,乾坤气象和"] # 定义变量n,作为累加器 n=0 ### ③ 自定义函数fun() # fun()的功能是,写一个倒计时数字,以及一个节气的名称、英文名称和对应的诗词 def fun(): global n # 强制n是全局变量的n(即声明本函数体内的变量n为主函数中的那个全局变量n) turtle.clear() # 清除屏幕中的已有绘图。(如果不用clear(),5个数字会重叠在一起) turtle.dot(500,"#b1352b") # 画一个直径为500,颜色为#b1352b(一种红色)的圆点,作为背景装饰 turtle.penup() turtle.setheading(-90) # 让头部向下 turtle.backward(10) # 向上移动10像素,准备写字.(如果不向上移动10像素,写出的几行字会偏下) turtle.write(24-n,align="center",font=("黑体",120)) # 写倒计时数字(第1行) turtle.forward(50) # 向下移动50像素,准备写字 turtle.write(name[n],align="center",font=("黑体",30)) # 写节气中文名称(第2行) turtle.forward(50)
最新发布
03-15
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值