日韩精品一区二区三区高清_久久国产热这里只有精品8_天天做爽夜夜做爽_一本岛在免费一二三区

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

代做COMP9021、python程序設計代寫
代做COMP9021、python程序設計代寫

時間:2024-11-18  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



1 General matters
1.1 Aim
Assignment 2 COMP**21, Trimester 3, 2024
The purpose of the assignment is to:
• develop your problem solving skills;
• design and implement the solutions to problems in the form of medium sized Python programs; • practice the design and implementation of search techniques, with recursion as a good approach; • design and implement an interface based on the desired behaviour of an application program;
• possibly practice using the re and numpy modules.
1.2 Submission
Your program will be stored in a file named crossword.py. After you have developed and tested your program, upload it using Ed (unless you worked directly in Ed). Assignments can be submitted more than once; the last version is marked. Your assignment is due by November 18, 10:00am.
1.3 Assessment
The assignment is worth 13 marks. It is going to be tested against a number of inputs. For each test, the automarking script will let your program run for 30 seconds.
Assignments can be submitted up to 5 days after the deadline. The maximum mark obtainable reduces by 5% per full late day, for up to 5 days. Thus if students A and B hand in assignments worth 12 and 11, both two days late (that is, more than 24 hours late and no more than 48 hours late), then the maximum mark obtainable is 11.7, so A gets min(11.7, 12) = 11.7 and B gets min(11.7, 11) = 11.
The outputs of your programs should be exactly as indicated. 1.4 Reminder on plagiarism policy
You are permitted, indeed encouraged, to discuss ways to solve the assignment with other people. Such discussions must be in terms of algorithms, not code. But you must implement the solution on your own. Submissions are routinely scanned for similarities that occur when students copy and modify other people’s work, or work very closely together on a single implementation. Severe penalties apply.
1

2 Solving crosswords 2.1 General description
The aim is to fill in a crossword grid, in which some letters might have been placed already, in one of two ways:
• being given the collection of all missing entries in an underlying solution to the crossword, find a way to place those entries in the grid (in one of possibly more than one way);
• being given a collection of words, find a way to select and place some of those words in the grid so that it solves the puzzle (in one of possibly more than one way).
We will consider grids with at least 2 rows and at least 2 columns, and such that any cell is next to another cell, though maybe not next to both horizontal and vertical cells; so any cell is part of a word of at least 2 letters, and by word we mean a word with at least 2 letters.
A presentation of a grid provided as input will be captured in a .tex file, and a presentation of a solved puzzle will also be captured in a .tex file; those .tex files can be given as arguments to pdflatex to generate .pdf files that display grids in a pleasing graphical form, but play no role in the assignment.
The code will be all about the design and implementation of a Crossword class. An object of class Crossword will provide an interface to work with a particular grid and collections of words of the kind just described; it will have methods for both problems previously described, and also benefit from the implementation of the __str__() special method to display some information about the grid and the words it possibly contains already.
partial_grid_3.tex is an example of a .tex file for a grid in which letters have been placed already, that can be considered as an input file, and here is the .pdf file created by pdflatex from this .tex file. solved_partial_grid_3.tex is an example of a .tex file for a solution to that grid, that can be
considered as an output file, and here is the .pdf file created by pdflatex from this .tex file. The contents of all input .tex files will be of the following form:
\documentclass{standalone}
\usepackage{pas-crosswords}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
...
\end{tikzpicture}
\end{document}
For input files, what lies between \begin{tikzpicture} and \end{tikzpicture} is of the following form:
\begin{crossgrid}[h=_, v=_]
\blackcases{_/_, ..., _/_}
\words[v]{_/_/_, ..., _/_/_}
\words[h]{_/_/_, ..., _/_/_}
\end{crossgrid}
Each of
• \blackcases{_/_, ..., _/_},
• \words[v]{_/_/_, ..., _/_/_} and • \words[h]{_/_/_, ..., _/_/_}
2

is optional and can appear in any order.
• In \begin{crossgrid}[h=_, v=_], the first and second occurrences of _ denote integers at least equal to 2, that represent the horizontal dimension and the vertical dimension of the grid, respec- tively; let h-dim and v-dim denote those dimensions, respectively.
• In \blackcases{_/_, ..., _/_}, each occurrence of _/_ denotes a slash-separated pair of integers (i,j) with 1 ≤ i ≤ h-dim and 1 ≤ j ≤ v-dim, to denote that there is a black square at the intersection of the ith column and the jth row. If \blackcases{_/_, ..., _/_} is present then there is at least one such pair, consecutive pairs being separated by a comma.
• In \words[v]{_/_/_, ..., _/_/_}, each occurrence of _/_/_ denotes a slash-separated triple (i,j,w) where i and j are integers with 1 ≤ i ≤ h-dim and 1 ≤ j ≤ v-dim, and where w is a word of at least 2 letters that is vertically placed in the grid and whose first letter is at the intersec- tion of the ith column and the jth row. If \words[v]{_/_/_, ..., _/_/_} is present then there is at least one such triple, consecutive triples being separated by a comma.
• In \words[h]{_/_/_, ..., _/_/_}, each occurrence of _/_/_ denotes a slash-separated triple (i,j,w) where i and j are integers with 1 ≤ i ≤ h-dim and 1 ≤ j ≤ v-dim, and where w is a word of at least 2 letters that is horizontally placed in the grid and whose first letter is at the intersection of the ith column and the jth row. If \words[h]{_/_/_, ..., _/_/_} is present then there is at least one such triple, consecutive triples being separated by a comma.
You can assume that the input is valid: no word or black square will start or extend beyond the dimensions of the grid.
For output files, what lies between \begin{tikzpicture} and \end{tikzpicture} is of the form \gridcross{_, ... _} where _, ... _ is a comma-separated sequence of v-dim strings, each of length h-dim, to denote from top to bottom each of the rows of the filled grid, using *s to represent black squares, and using uppercase letters for the grid’s entries.
In .tex files, there can be spaces between tokens almost everywhere (the pas-crosswords package actually prevents spaces to be used around some of the / characters). Also, in .tex files, the leftmost occurrence of a % marks the beginning of a comment that runs from this symbol included all the way to the end of the physical line, including the \n character. This allows one to have many physical lines to represent a unique logical line, and can be used to, for instance, have \blackcases{_/_, ..., _/_}, \words[v]{_/_/_, ..., _/_/_}, \words[h]{_/_/_, ..., _/_/_} and \gridcross{_, ... _} split over more than one physical line and improve readability. It is therefore advisable to process a .tex file in such a way that its content is captured as a single string with all space removed, before searching for patterns of interest in this string.
2.2 Analysing a grid (3 marks)
Your program will allow Crossword objects to be created from .tex files that you can assume are stored in the working directory, and whose contents satisfy all conditions spelled out in Section 2.1. Making use of the .tex files empty_grid_1.tex, empty_grid_2.tex, empty_grid_3.tex, partial_grid_1.tex, partial_grid_2.tex and partial_grid_3.tex, having for associated .pdf files empty_grid_1.pdf, empty_grid_2.pdf, empty_grid_3.pdf, partial_grid_1.pdf, partial_grid_2.pdf and partial_grid_3.pdf, here is a possible interaction.
Passing as argument to print() a denotation of a Crossword object results in an output of the kind A grid of width _ and height _, with _ black case[s], filled with _ letter[s],
with _ complete vertical word[s] and _ complete horizontal word[s]. where
• the first occurrence of _ is a number that represents the horizontal dimension of the grid, 3

• the second occurrence of _ is a number that represents the vertical dimension of the grid,
• the third occurrence of _ is no, 1 or a number at least equal to 2 that represents the number n of
black cases in the grid (of course it is case if n = 1 and cases otherwise),
• the fourth occurrence of _ is no, 1 or a number at least equal to 2 that represents the number n of
letters alredy placed in the grid (of course it is letter if n = 1 and letters otherwise),
• the fifth occurrence of _ is no, 1 or a number at least equal to 2 that represents the number n of
vertical words in the grid (of course it is word if n = 1 and words otherwise), and
• the sixth occurrence of _ is no, 1 or a number at least equal to 2 that represents the number n of
horizontal words in the grid (of course it is word if n = 1 and words otherwise).
2.3 Filling in a grid with given words (5 marks)
Crossword objects can call the fill_with_given_words() method, that takes two arguments.
• First, the name of a .txt file, meant to exist in the working directory and store a number of words, one word per line (without empty line, without space on any line). You can assume that the file indeed exists and has the expected contents. The file could be empty, and there could be more than one occurrence of a given word.
• Second, the name of a .tex file, meant to store a representation of a solution in case a solution exists.
The aim is to complete all missing entries precisely with the words stored in the file provided as first argument; so there should be as many words in the file as there are incomplete words in the grid; words do not have to be distinct in the file, because a given word can appear more than once in a grid.
If the task is impossible, then the method prints out:
Hey, it can't be filled with these words!
Otherwise, the method prints out:
I filled it!
Result captured in _.
where _ is the name of the .tex file that has been provided as argument to the method. The solution that has been discovered is stored in that file. If the file does not exist then it is created, in the working directory; if it does exist then it is overwritten. There could be more than one solution; only one solution is sought after, and any correct solution is acceptable. In any case, the method returns None.
Here is a possible interaction.
• The .tex files that have been created or overwritten during this interaction are
– filled_empty_grid_2.tex,
– filled_empty_grid_3.tex and – filled_partial_grid_2.tex.
• The associated .pdf files are
– filled_empty_grid_2.pdf,
– filled_empty_grid_3.pdf and – filled_partial_grid_2.pdf.
It is advisable to make sure that the spaces in the .tex files produced during the interaction are exactly as shown. Still, whitespace will be ignored for assessment purposes, but of course, all other nonspace characters have to be exactly the same, character for character.
4

2.4 Solving a crossword (5 marks)
Crossword objects can call the solve() method, that takes as argument the name of a .tex file, meant to store a representation of a solution in case a solution exists.
The aim is to complete all missing entries with words from the file dictionary.txt. That file is provided, meant to be stored in the working directory, and you can assume that this is the case indeed. A word in dictionary.txt could be used more than once, because a given word can appear more than once in a grid. The grid could already contain complete words that are not in dictionary.txt. This is fine. It should not be checked that any complete word in the input grid is in dictionary.txt; this might not be the case, and that is fine. But any incomplete or missing word has to be one from dictionary.txt.
If the task is impossible, then the method prints out:
Hey, it can't be solved!
Otherwise, the method prints out:
I solved it!
Result captured in _.
where _ is the name of the .tex file that has been provided as argument to the method. The solution that has been discovered is stored in that file. If the file does not exist then it is created, in the working directory; if it does exist then it is overwritten. There could be more than one solution; only one solution is sought after, and any correct solution is acceptable. In any case, the method returns None.
Here is a possible interaction.
• The .tex files that have been created or overwritten during this interaction are
– solved_empty_grid_1.tex,
– solved_empty_grid_2.tex,
– solved_partial_grid_1.tex and – solved_partial_grid_3.tex.
• The associated .pdf files are
– solved_empty_grid_1.pdf,
– solved_empty_grid_2.pdf,
– solved_partial_grid_1.pdf and – solved_partial_grid_3.pdf.
It is advisable to make sure that the spaces in the .tex files produced during the interaction are exactly as shown. Still, whitespace will be ignored for assessment purposes, but of course, all other nonspace characters have to be exactly the same, character for character.


請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp




 

掃一掃在手機打開當前頁
  • 上一篇:代做CS202、代寫python/Java語言程序
  • 下一篇:CCIT4020代做、代寫c/c++,Java程序設計
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    2025年10月份更新拼多多改銷助手小象助手多多出評軟件
    2025年10月份更新拼多多改銷助手小象助手多
    有限元分析 CAE仿真分析服務-企業/產品研發/客戶要求/設計優化
    有限元分析 CAE仿真分析服務-企業/產品研發
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發動機性能
    挖掘機濾芯提升發動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
  • 短信驗證碼 trae 豆包網頁版入口 目錄網 排行網

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    日韩精品一区二区三区高清_久久国产热这里只有精品8_天天做爽夜夜做爽_一本岛在免费一二三区

      <em id="rw4ev"></em>

        <tr id="rw4ev"></tr>

        <nav id="rw4ev"></nav>
        <strike id="rw4ev"><pre id="rw4ev"></pre></strike>
        久久精品30| 久久亚洲精品中文字幕冲田杏梨| 亚洲天天影视| 国外精品视频| 伊人色综合久久天天| 欧美中文字幕久久| 在线观看日韩av| 欧美激情亚洲自拍| 国产精品成人va在线观看| 美女露胸一区二区三区| 欧美破处大片在线视频| 欧美一区二区性| 亚洲一级片在线看| 亚洲欧美国产精品va在线观看| 欧美一区二区三区播放老司机| 欧美日本免费一区二区三区| 影音先锋亚洲精品| 亚洲人成高清| 欧美日韩日韩| 亚洲精品乱码久久久久久| 亚洲午夜久久久久久久久电影网| 国产日韩欧美三区| 亚洲你懂的在线视频| 亚洲一区二区三区四区五区黄| 欧美精品亚洲精品| 久久综合综合久久综合| 亚洲午夜一区二区| 欧美激情在线播放| 久久黄色网页| 女人色偷偷aa久久天堂| 久久久久久91香蕉国产| 国产精品成人久久久久| 欧美激情精品久久久久久久变态| 国产午夜精品全部视频播放| 久久影视精品| 在线观看亚洲视频| 国产伦精品一区二区三区在线观看| 亚洲国产合集| 亚洲视频久久| 翔田千里一区二区| 你懂的国产精品永久在线| 国产精品免费久久久久久| 久久精品视频va| 亚洲欧美国产另类| 欧美成人激情在线| 亚洲免费电影在线观看| 亚洲欧美日韩天堂| 老妇喷水一区二区三区| 午夜精品婷婷| 欧美中文字幕视频在线观看| 一区久久精品| 亚洲精品免费电影| 亚洲女人天堂成人av在线| 亚洲美女中出| 精品成人一区二区三区| 日韩视频专区| 欧美日韩在线视频首页| 樱桃成人精品视频在线播放| 国产精品综合视频| 亚洲成在线观看| 美女精品在线| 欧美激情视频在线免费观看 欧美视频免费一| 国产精品a久久久久久| 亚洲一级黄色av| 欧美三级电影一区| 国产精品家教| 欧美一区中文字幕| 国产一区二区三区精品欧美日韩一区二区三区| 欧美一二区视频| 久久成人免费日本黄色| 久久久欧美一区二区| 国产精品狼人久久影院观看方式| 尤妮丝一区二区裸体视频| 午夜一区二区三视频在线观看| 国产一区二区三区在线观看精品| 国产精品美女久久久浪潮软件| 亚洲国产精品悠悠久久琪琪| 亚洲丶国产丶欧美一区二区三区| 国产婷婷97碰碰久久人人蜜臀| 黄色在线一区| 欧美日韩国产在线播放| 99国产一区二区三精品乱码| 欧美日产在线观看| 国产精品区二区三区日本| 亚洲精品国产精品乱码不99按摩| 亚洲欧美日韩中文视频| 欧美精品日韩综合在线| 亚洲一区二区精品在线| 亚洲精品欧美专区| 国产精品理论片在线观看| 国产精品久久久久久久久婷婷| 欧美日韩在线精品| 午夜国产精品视频免费体验区| 国内自拍亚洲| 亚洲五月六月| 国产精品久久久久天堂| 国产精品一区二区在线观看| 国产精品日韩久久久久| 欧美交受高潮1| 一色屋精品视频在线观看网站| 亚洲激情成人网| 国产精品视频观看| 欧美一区二区精品在线| 黄色欧美日韩| 久久精品视频在线免费观看| 国产一区自拍视频| 欧美精品一区二区三区在线播放| 国产精品久久久久久妇女6080| 国产精品亚洲片夜色在线| 久久一综合视频| 亚洲免费av网站| 久久亚洲私人国产精品va| 欧美一区视频在线| 午夜久久电影网| 久久福利视频导航| 亚洲精品免费看| 欧美激情一区二区三区蜜桃视频| 国产日韩精品综合网站| 国产精品久久久久久久久久免费看| 国产精品久久久久久久久免费樱桃| 国产伦理精品不卡| 欧美日韩在线亚洲一区蜜芽| 极品少妇一区二区三区| 国产一区二区电影在线观看| 久久午夜精品一区二区| 亚洲免费黄色| 欧美a一区二区| 欧美成人免费全部| 国产视频精品免费播放| 欧美国产乱视频| 亚洲美女视频在线免费观看| 欧美一级黄色录像| 国产日韩欧美高清| 欧美日韩一区二区免费在线观看| 精品白丝av| 免费影视亚洲| 欧美精品久久久久久久| 欧美亚洲日本网站| 99精品视频一区| 久久天天躁夜夜躁狠狠躁2022| 亚洲在线观看视频网站| 亚洲一区二区日本| 国产在线拍揄自揄视频不卡99| 国产视频一区在线观看| 亚洲日本电影| 国产手机视频精品| 亚洲精品美女久久7777777| 欧美黄色一区| 欧美国产日韩一区| 激情欧美一区二区三区| 黑丝一区二区三区| 国产精品麻豆va在线播放| 久久亚洲精选| 亚洲永久视频| 午夜精品av| 亚洲精品国产精品国自产观看| 午夜精品区一区二区三| 欧美一区亚洲一区| 欧美一区二区三区免费大片| 欧美日韩精品一区| 国产日韩亚洲欧美精品| 国产精品成av人在线视午夜片| 久久一区二区三区超碰国产精品| 亚洲人成网站在线播|