new-link制作课程表,要求避免早上第一节课是体育课,怎么修改?

问题描述

link制作课程表,要求避免早上第一节课是体育课,怎么修改?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string[] courses = { ""体育课""体育课""美术课""音乐课""劳动课""语文课""数学课""英语课"" };
string[] xinqi = { ""一""二""三""四""五"" };
var result = Enumerable.Range(0 5).Select(_ => Enumerable.Range(0 6).Select(__ => """").ToArray()).ToArray();
while (!result.All(x => x.Contains(""语文课"") && x.Contains(""数学课"") && x.Contains(""英语课"") && x.Contains(""自修课"")))
{
var rndseq = Enumerable.Range(0 30).OrderBy(_ => Guid.NewGuid()).Zip(courses (x y) => new { x y }).ToArray();
for (int i = 0; i < 5; i++)
{
int pos = 0;
string[] cs = { ""语文课""数学课""英语课"" };
for (int j = 0; j < 6; j++)
{
if (rndseq.Any(x => x.x == i * 6 + j))
result[i][j] = rndseq.First(x => x.x == i * 6 + j).y;
else
result[i][j] = (pos++ < 3) ? cs[pos - 1] : ""自修课"";
}
}
}
result = result.Select((x i) => new string[] { ""星期"" + xinqi[i] }.Concat(x.OrderBy(y => y == ""自修课"" ? 1 : 0).ThenBy(_ => Guid.NewGuid()).GroupBy(y => y).SelectMany(y => y)).ToArray()).ToArray();
for (int j = 0; j < 7; j++)
{
for (int i = 0; i < 5; i++)
{
Console.Write(result[i][j] + ""t"");
}
Console.WriteLine();
}
}
}
}

解决方案

while (!result.All(x => x.Contains(""语文课"") && x.Contains(""数学课"") && x.Contains(""英语课"") && x.Contains(""自修课"") && x[0] != ""体育课""))

时间: 2024-09-20 09:47:45

new-link制作课程表,要求避免早上第一节课是体育课,怎么修改?的相关文章

link生成随机课程表,要求每天6节课

问题描述 link生成随机课程表,要求每天6节课 link生成随机课程表,要求每天6节课,每天都有语文数学英语,总共各7节,体育课2节,美术课1节,音乐课1节,劳动课1节,社会课1节,自然课1节,思想品德课1节,剩下都是自修课. 解决方案 using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Text.RegularExpressions;using Syste

前端(第一节课 HTML、CSS 、JAVAscript的概念)

HTML.CSS .JAVAscript的概念 1.HTML HTML 是用来描述网页的一种语言. HTML 指的是超文本标记语言 (Hyper Text Markup Language) HTML 不是一种编程语言,而是一种标记语言 (markup language) 标记语言是一套标记标签 (markup tag) HTML 使用标记标签来描述网页 2.CSS 层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标

给大一新生上C语言,第一节课大家有什么建议呢?

问题描述 这学期接了学校里的C语言课程,大一的新生第一节课,我希望能让让这帮孩子们能够对C产生较大的学习兴趣,从而用兴趣驱使学习大家有什么好的建议么?我是一个吹水型的老师~ 解决方案 解决方案二:应该从basic开始教,用初中生教材.解决方案三:不好好学小心不及格解决方案四:你先写个小游戏然后告诉他们这是用C写的解决方案五:有兴趣编程的哪有兴趣来上课.来上课的那有兴趣编程.解决方案六:引用4楼devmiao的回复: 有兴趣编程的哪有兴趣来上课.来上课的那有兴趣编程. 不知道你在说什么解决方案七:

new-link关于课程表的问题要求每天都有自修课,请问在如下代码的基础上怎么修改?

问题描述 link关于课程表的问题要求每天都有自修课,请问在如下代码的基础上怎么修改? using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Text.RegularExpressions;using System.Threading.Tasks; namespace ConsoleApplication1{ class Program { static voi

妹子学java第一节课后,竟然出现这种情况,突然感觉不会爱了!!

问题描述 packagecom.minrisoft;classMyapp{publicstaticvoidmain(String[]args){inta=12;System.out.println(a);}}到底怎么回事啊急死了用的eclipse编译器 解决方案 解决方案二:到src目录下执行:javacom.minrisoft.Myapp解决方案三:不好意思我点错了解决方案四:很有用可以运行了解决方案五:是不是改变CLASSPATH设置也也可以解决这个问题解决方案六:用eclipse这种编辑工

new-link可制作课程表,想在左边增加第几节课的数字,自己改了代码不对了

问题描述 link可制作课程表,想在左边增加第几节课的数字,自己改了代码不对了 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static v

link关于课程表的问题,如何将产生的课程表转换成DataTable?

问题描述 link关于课程表的问题,如何将产生的课程表转换成DataTable? link关于课程表的问题,如何将产生的课程表转换成DataTable? 解决方案 DataTable dt = new DataTable(); dt.Columns.AddRange(result[0]); foreach (var item in result.Skip(1)) { var row = dt.NewRow(); for (int i = 0; i < 5; i++) row[i] = item[

使用link制作一款《订餐软件》,一般网页是如何对接手机系统的?

问题描述 使用link制作一款<订餐软件>,一般网页是如何对接手机系统的? 使用link制作一款<订餐软件>,一般网页是如何对接手机系统的? 解决方案 你可以用webbrowser或者webview之类的控件,直接显示你的网页.

如何使用link制作网盘基于codefirst实现网盘软件中的图示功能?

问题描述 如何使用link制作网盘基于codefirst实现网盘软件中的图示功能? 如何使用link制作网盘基于codefirst实现网盘软件中的图示功能? 解决方案 什么叫图示功能,是指显示图标么? 解决方案二: 图呢,我都没看到图..