Code Monkey home page Code Monkey logo

mizuki-zhi-yuen's Introduction

Zhi-Yuen

本程式是用來分發志願序所寫的輔助工具。

規格

本程式會讀取一個名為 input.csv 的檔案,並經過運算後輸出一個名為output.csv 的檔案。

輸入

本 CSV 檔案第一列為標題列,其後為資料列。前三欄會認定為個資,分別為班級、座號、姓名。其後十三欄會被認定為志願序欄。 本程式不會讀取前三欄標題列的的資訊,但會讀取後十三欄標題列的文字作為分類與篩選。志願序欄標題的文字規格為:

名稱[同系列編號](時段[地點])
  • 名稱:必須為非數字的文字字元
  • 編號:選填,必須為數字
  • 時段:早、午擇一
  • 地點:必須為英文字母

例如

動力(午B)
電機(午B)
藝術(早)
家政1(早)
家政2(午A)
食品(午A)
商管(午A)
設計(早)
設計2(午A)
餐旅1(早)
餐旅2(午A)
餐旅3(早)
外語(早)

資料列則依照欄位填寫資訊,若為個資欄則填寫文字,弱勢志願欄則必須填寫數字。 若是同一列志願欄有相同數字,則以較前欄者為優先;若有空白則會從前欄候補到後欄排到最後志願後面。

都可以支援的輸入內容為:

班級,座號,姓名,動力(午B),電機(午B),藝術(早),家政1(早),家政2(午A),食品(午A),商管(午A),設計(早),設計2(午A),餐旅1(早),餐旅2(午A),餐旅3(早),外語(早)
一年七班,1,蘇軾,,,1,3,4,2,,5,,8,9,6,7
一年七班,2,蘇澈,12,13,6,5,3,4,9,8,10,2,1,7,11
一年七班,3,司馬光,12,13,6,5,3,4,9,8,10,2,1,7,11
一年九班,1,歐陽修,12,13,2,6,8,10,5,3,7,9,4,11,1
一年十班,1,王安石,1,2,2,3,3,3,5,5,5,5,5,,

分發規則

  1. 如果學生在該時段已經有組別,則跳下一志願
  2. 如果學生有選擇同類別的志願,則跳下一志願
  3. 如果志願所屬地點車為已滿,則跳下一志願
  4. 如果組別已滿,且該時段已沒有緩衝人數,則跳下一志願
  5. 如果群組已滿,且該地點在該地點群組都已滿的狀態下無法容納任一緩衝人數,則跳下一志願
  6. 如果群組已滿,但同地點其他群組為滿時,在加一人會造成該地點已滿的情況下,跳下一志願

輸出

本 CSV 檔案第一列為標題列,其後為資料列。欄位分別為班級、座號、姓名、上午組別、下午組別、車次。

班級,座號,姓名,上午組別,下午組別,車次
一年七班,1,蘇軾,藝術,動力,4
一年七班,2,蘇澈,家政1,餐旅2,1
一年七班,3,司馬光,家政1,餐旅2,1
一年九班,1,歐陽修,外語,餐旅2,1
一年十班,1,王安石,藝術,動力,4

mizuki-zhi-yuen's People

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.