99爱在线视频这里只有精品_窝窝午夜看片成人精品_日韩精品久久久毛片一区二区_亚洲一区二区久久

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

COMP9021代做、代寫Python程序語言

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


Assignment 2

COMP**21, Trimester 3, 2023

1. General matter

1.1. Aims. The purpose of the assignment is to:

• design and implement an interface based on the desired behaviour of an application program;

• practice the use of Python syntax;

• develop problem solving skills.

1.2. Submission. Your program will be stored in a file named polygons.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 20, 10:00am.

1.3. Assessment. The assignment is worth 13 marks. It is going to be tested against a number of input files.

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, 11) = 11 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.

2. General presentation

You will design and implement a program that will

• extract and analyse the various characteristics of (simple) polygons, their contours being coded and

stored in a file, and

• – either display those characteristics: perimeter, area, convexity, number of rotations that keep the

polygon invariant, and depth (the length of the longest chain of enclosing polygons)

– or output some Latex code, to be stored in a file, from which a pictorial representation of the

polygons can be produced, coloured in a way which is proportional to their area.

Call encoding any 2-dimensional grid of size between between 2 × 2 and 50 × 50 (both dimensions can be

different) all of whose elements are either 0 or 1.

Call neighbour of a member m of an encoding any of the at most eight members of the grid whose value is 1

and each of both indexes differs from m’s corresponding index by at most 1. Given a particular encoding, we

inductively define for all natural numbers d the set of polygons of depth d (for this encoding) as follows. Let a

natural number d be given, and suppose that for all d

0 < d, the set of polygons of depth d

0 has been defined.

Change in the encoding all 1’s that determine those polygons to 0. Then the set of polygons of depth d is

defined as the set of polygons which can be obtained from that encoding by connecting 1’s with some of their

neighbours in such a way that we obtain a maximal polygon (that is, a polygon which is not included in any

other polygon obtained from that encoding by connecting 1’s with some of their neighbours).

1

2

3. Examples

3.1. First example. The file polys_1.txt has the following contents:

Here is a possible interaction:

$ python3

...

>>> from polygons import *

>>> polys = Polygons('polys_1.txt')

>>> polys.analyse()

Polygon 1:

Perimeter: 78.4

Area: 384.16

Convex: yes

Nb of invariant rotations: 4

Depth: 0

Polygon 2:

Perimeter: 75.2

Area: 353.44

Convex: yes

Nb of invariant rotations: 4

Depth: 1

Polygon 3:

Perimeter: 72.0

Area: **4.00

Convex: yes

Nb of invariant rotations: 4

Depth: 2

Polygon 4:

Perimeter: 68.8

Area: 295.84

Convex: yes

Nb of invariant rotations: 4

Depth: 3

Polygon 5:

Perimeter: 65.6

Area: 268.96

Convex: yes

Nb of invariant rotations: 4

Depth: 4

Polygon 6:

Perimeter: 62.4

Area: 243.36

Convex: yes

Nb of invariant rotations: 4

Depth: 5

Polygon 7:

Perimeter: 59.2

Area: 219.04

Convex: yes

Nb of invariant rotations: 4

Depth: 6

Polygon 8:

Perimeter: 56.0

Area: 196.00

Convex: yes

Nb of invariant rotations: 4

4

Depth: 7

Polygon 9:

Perimeter: 52.8

Area: 174.24

Convex: yes

Nb of invariant rotations: 4

Depth: 8

Polygon 10:

Perimeter: 49.6

Area: 153.76

Convex: yes

Nb of invariant rotations: 4

Depth: 9

Polygon 11:

Perimeter: 46.4

Area: 134.56

Convex: yes

Nb of invariant rotations: 4

Depth: 10

Polygon 12:

Perimeter: 43.2

Area: 116.64

Convex: yes

Nb of invariant rotations: 4

Depth: 11

Polygon 13:

Perimeter: 40.0

Area: 100.00

Convex: yes

Nb of invariant rotations: 4

Depth: 12

Polygon 14:

Perimeter: 36.8

Area: 84.64

Convex: yes

Nb of invariant rotations: 4

Depth: 13

Polygon 15:

Perimeter: 33.6

Area: 70.56

Convex: yes

Nb of invariant rotations: 4

Depth: 14

Polygon 16:

Perimeter: 30.4

Area: 57.76

Convex: yes

Nb of invariant rotations: 4

Depth: 15

Polygon 17:

Perimeter: 27.2

Area: 46.24

Convex: yes

Nb of invariant rotations: 4

5

Depth: 16

Polygon 18:

Perimeter: 24.0

Area: 36.00

Convex: yes

Nb of invariant rotations: 4

Depth: 17

Polygon 19:

Perimeter: 20.8

Area: 27.04

Convex: yes

Nb of invariant rotations: 4

Depth: 18

Polygon 20:

Perimeter: 17.6

Area: 19.36

Convex: yes

Nb of invariant rotations: 4

Depth: 19

Polygon 21:

Perimeter: 14.4

Area: 12.96

Convex: yes

Nb of invariant rotations: 4

Depth: 20

Polygon 22:

Perimeter: 11.2

Area: 7.84

Convex: yes

Nb of invariant rotations: 4

Depth: 21

Polygon 23:

Perimeter: 8.0

Area: 4.00

Convex: yes

Nb of invariant rotations: 4

Depth: 22

Polygon 24:

Perimeter: 4.8

Area: 1.44

Convex: yes

Nb of invariant rotations: 4

Depth: 23

Polygon 25:

Perimeter: 1.6

Area: 0.16

Convex: yes

Nb of invariant rotations: 4

Depth: 24

>>> polys.display()

6

The effect of executing polys.display() is to produce a file named polys_1.tex that can be given as

argument to pdflatex to produce a file named polys_1.pdf that views as follows.

7

3.2. Second example. The file polys_2.txt has the following contents:

Here is a possible interaction:

$ python3

...

>>> from polygons import *

>>> polys = Polygons('polys_2.txt')

>>> polys.analyse()

Polygon 1:

Perimeter: 37.6 + 92*sqrt(.**)

Area: 176.64

Convex: no

Nb of invariant rotations: 2

Depth: 0

Polygon 2:

Perimeter: 17.6 + 42*sqrt(.**)

Area: **.92

Convex: yes

Nb of invariant rotations: 1

Depth: 1

Polygon 3:

Perimeter: 16.0 + 38*sqrt(.**)

Area: 60.80

Convex: yes

Nb of invariant rotations: 1

Depth: 2

Polygon 4:

Perimeter: 16.0 + 40*sqrt(.**)

Area: 64.00

Convex: yes

Nb of invariant rotations: 1

Depth: 0

Polygon 5:

Perimeter: 14.4 + 34*sqrt(.**)

Area: 48.96

Convex: yes

Nb of invariant rotations: 1

Depth: 3

Polygon 6:

Perimeter: 16.0 + 40*sqrt(.**)

Area: 64.00

Convex: yes

Nb of invariant rotations: 1

Depth: 0

Polygon 7:

Perimeter: 12.8 + 30*sqrt(.**)

Area: 38.40

Convex: yes

Nb of invariant rotations: 1

Depth: 4

Polygon 8:

Perimeter: 14.4 + 36*sqrt(.**)

Area: 51.84

Convex: yes

Nb of invariant rotations: 1

9

Depth: 1

Polygon 9:

Perimeter: 11.2 + 26*sqrt(.**)

Area: 29.12

Convex: yes

Nb of invariant rotations: 1

Depth: 5

Polygon 10:

Perimeter: 14.4 + 36*sqrt(.**)

Area: 51.84

Convex: yes

Nb of invariant rotations: 1

Depth: 1

Polygon 11:

Perimeter: 9.6 + 22*sqrt(.**)

Area: 21.12

Convex: yes

Nb of invariant rotations: 1

Depth: 6

Polygon 12:

Perimeter: 12.8 + ***sqrt(.**)

Area: 40.96

Convex: yes

Nb of invariant rotations: 1

Depth: 2

Polygon 13:

Perimeter: 8.0 + 18*sqrt(.**)

Area: 14.40

Convex: yes

Nb of invariant rotations: 1

Depth: 7

Polygon 14:

Perimeter: 12.8 + ***sqrt(.**)

Area: 40.96

Convex: yes

Nb of invariant rotations: 1

Depth: 2

Polygon 15:

Perimeter: 6.4 + 14*sqrt(.**)

Area: 8.96

Convex: yes

Nb of invariant rotations: 1

Depth: 8

Polygon 16:

Perimeter: 11.2 + 28*sqrt(.**)

Area: 31.36

Convex: yes

Nb of invariant rotations: 1

Depth: 3

Polygon 17:

Perimeter: 4.8 + 10*sqrt(.**)

Area: 4.80

Convex: yes

Nb of invariant rotations: 1

10

Depth: 9

Polygon 18:

Perimeter: 11.2 + 28*sqrt(.**)

Area: 31.36

Convex: yes

Nb of invariant rotations: 1

Depth: 3

Polygon 19:

Perimeter: 3.2 + 6*sqrt(.**)

Area: 1.92

Convex: yes

Nb of invariant rotations: 1

Depth: 10

Polygon 20:

Perimeter: 9.6 + 24*sqrt(.**)

Area: 23.04

Convex: yes

Nb of invariant rotations: 1

Depth: 4

Polygon 21:

Perimeter: 1.6 + 2*sqrt(.**)

Area: 0.**

Convex: yes

Nb of invariant rotations: 1

Depth: 11

Polygon 22:

Perimeter: 9.6 + 24*sqrt(.**)

Area: 23.04

Convex: yes

Nb of invariant rotations: 1

Depth: 4

Polygon 23:

Perimeter: 8.0 + 20*sqrt(.**)

Area: 16.00

Convex: yes

Nb of invariant rotations: 1

Depth: 5

Polygon 24:

Perimeter: 8.0 + 20*sqrt(.**)

Area: 16.00

Convex: yes

Nb of invariant rotations: 1

Depth: 5

Polygon 25:

Perimeter: 6.4 + 16*sqrt(.**)

Area: 10.24

Convex: yes

Nb of invariant rotations: 1

Depth: 6

Polygon 26:

Perimeter: 6.4 + 16*sqrt(.**)

Area: 10.24

Convex: yes

Nb of invariant rotations: 1

11

Depth: 6

Polygon 27:

Perimeter: 4.8 + 12*sqrt(.**)

Area: 5.76

Convex: yes

Nb of invariant rotations: 1

Depth: 7

Polygon 28:

Perimeter: 4.8 + 12*sqrt(.**)

Area: 5.76

Convex: yes

Nb of invariant rotations: 1

Depth: 7

Polygon 29:

Perimeter: 3.2 + 8*sqrt(.**)

Area: 2.56

Convex: yes

Nb of invariant rotations: 1

Depth: 8

Polygon 30:

Perimeter: 3.2 + 8*sqrt(.**)

Area: 2.56

Convex: yes

Nb of invariant rotations: 1

Depth: 8

Polygon 31:

Perimeter: 1.6 + 4*sqrt(.**)

Area: 0.64

Convex: yes

Nb of invariant rotations: 1

Depth: 9

Polygon **:

Perimeter: 1.6 + 4*sqrt(.**)

Area: 0.64

Convex: yes

Nb of invariant rotations: 1

Depth: 9

Polygon 33:

Perimeter: 17.6 + 42*sqrt(.**)

Area: **.92

Convex: yes

Nb of invariant rotations: 1

Depth: 1

Polygon 34:

Perimeter: 16.0 + 38*sqrt(.**)

Area: 60.80

Convex: yes

Nb of invariant rotations: 1

Depth: 2

Polygon 35:

Perimeter: 14.4 + 34*sqrt(.**)

Area: 48.96

Convex: yes

Nb of invariant rotations: 1

12

Depth: 3

Polygon 36:

Perimeter: 12.8 + 30*sqrt(.**)

Area: 38.40

Convex: yes

Nb of invariant rotations: 1

Depth: 4

Polygon 37:

Perimeter: 11.2 + 26*sqrt(.**)

Area: 29.12

Convex: yes

Nb of invariant rotations: 1

Depth: 5

Polygon 38:

Perimeter: 9.6 + 22*sqrt(.**)

Area: 21.12

Convex: yes

Nb of invariant rotations: 1

Depth: 6

Polygon 39:

Perimeter: 8.0 + 18*sqrt(.**)

Area: 14.40

Convex: yes

Nb of invariant rotations: 1

Depth: 7

Polygon 40:

Perimeter: 6.4 + 14*sqrt(.**)

Area: 8.96

Convex: yes

Nb of invariant rotations: 1

Depth: 8

Polygon 41:

Perimeter: 4.8 + 10*sqrt(.**)

Area: 4.80

Convex: yes

Nb of invariant rotations: 1

Depth: 9

Polygon 42:

Perimeter: 3.2 + 6*sqrt(.**)

Area: 1.92

Convex: yes

Nb of invariant rotations: 1

Depth: 10

Polygon 43:

Perimeter: 1.6 + 2*sqrt(.**)

Area: 0.**

Convex: yes

Nb of invariant rotations: 1

Depth: 11

>>> polys.display()

13

The effect of executing polys.display() is to produce a file named polys_2.tex that can be given as

argument to pdflatex to produce a file named polys_2.pdf that views as follows.

14

3.3. Third example. The file polys_3.txt has the following contents:

Here is a possible interaction:

$ python3

...

>>> from polygons import *

>>> polys = Polygons('polys_3.txt')

>>> polys.analyse()

Polygon 1:

Perimeter: 2.4 + 9*sqrt(.**)

Area: 2.80

Convex: no

Nb of invariant rotations: 1

Depth: 0

Polygon 2:

Perimeter: 51.2 + 4*sqrt(.**)

Area: 117.28

Convex: no

Nb of invariant rotations: 2

Depth: 0

Polygon 3:

Perimeter: 2.4 + 9*sqrt(.**)

Area: 2.80

Convex: no

Nb of invariant rotations: 1

Depth: 0

Polygon 4:

Perimeter: 17.6 + 40*sqrt(.**)

Area: 59.04

Convex: no

Nb of invariant rotations: 2

Depth: 1

Polygon 5:

Perimeter: 3.2 + 28*sqrt(.**)

Area: 9.76

Convex: no

Nb of invariant rotations: 1

Depth: 2

Polygon 6:

Perimeter: 27.2 + 6*sqrt(.**)

Area: 5.76

Convex: no

Nb of invariant rotations: 1

Depth: 2

Polygon 7:

Perimeter: 4.8 + 14*sqrt(.**)

Area: 6.72

Convex: no

Nb of invariant rotations: 1

Depth: 1

Polygon 8:

Perimeter: 4.8 + 14*sqrt(.**)

Area: 6.72

Convex: no

Nb of invariant rotations: 1

16

Depth: 1

Polygon 9:

Perimeter: 3.2 + 2*sqrt(.**)

Area: 1.12

Convex: yes

Nb of invariant rotations: 1

Depth: 2

Polygon 10:

Perimeter: 3.2 + 2*sqrt(.**)

Area: 1.12

Convex: yes

Nb of invariant rotations: 1

Depth: 2

Polygon 11:

Perimeter: 2.4 + 9*sqrt(.**)

Area: 2.80

Convex: no

Nb of invariant rotations: 1

Depth: 0

Polygon 12:

Perimeter: 2.4 + 9*sqrt(.**)

Area: 2.80

Convex: no

Nb of invariant rotations: 1

Depth: 0

>>> polys.display()

The effect of executing polys.display() is to produce a file named polys_3.tex that can be given as

argument to pdflatex to produce a file named polys_3.pdf that views as follows.

17

3.4. Fourth example. The file polys_4.txt has the following contents:

Here is a possible interaction:

$ python3

...

>>> from polygons import *

>>> polys = Polygons('polys_4.txt')

>>> polys.analyse()

Polygon 1:

Perimeter: 11.2 + 28*sqrt(.**)

Area: 18.88

Convex: no

Nb of invariant rotations: 2

Depth: 0

Polygon 2:

Perimeter: 3.2 + 5*sqrt(.**)

Area: 2.00

Convex: no

Nb of invariant rotations: 1

Depth: 0

Polygon 3:

Perimeter: 1.6 + 6*sqrt(.**)

Area: 1.76

Convex: yes

Nb of invariant rotations: 1

Depth: 0

Polygon 4:

Perimeter: 3.2 + 1*sqrt(.**)

Area: 0.88

Convex: yes

Nb of invariant rotations: 1

Depth: 0

Polygon 5:

Perimeter: 4*sqrt(.**)

Area: 0.**

Convex: yes

Nb of invariant rotations: 4

Depth: 1

Polygon 6:

Perimeter: 4*sqrt(.**)

Area: 0.**

Convex: yes

Nb of invariant rotations: 4

Depth: 1

Polygon 7:

Perimeter: 4*sqrt(.**)

Area: 0.**

Convex: yes

Nb of invariant rotations: 4

Depth: 1

Polygon 8:

Perimeter: 4*sqrt(.**)

Area: 0.**

Convex: yes

Nb of invariant rotations: 4

19

Depth: 1

Polygon 9:

Perimeter: 1.6 + 1*sqrt(.**)

Area: 0.24

Convex: yes

Nb of invariant rotations: 1

Depth: 0

Polygon 10:

Perimeter: 0.8 + 2*sqrt(.**)

Area: 0.16

Convex: yes

Nb of invariant rotations: 2

Depth: 0

Polygon 11:

Perimeter: 12.0 + 7*sqrt(.**)

Area: 5.68

Convex: no

Nb of invariant rotations: 1

Depth: 0

Polygon 12:

Perimeter: 2.4 + 3*sqrt(.**)

Area: 0.88

Convex: no

Nb of invariant rotations: 1

Depth: 0

Polygon 13:

Perimeter: 1.6

Area: 0.16

Convex: yes

Nb of invariant rotations: 4

Depth: 0

Polygon 14:

Perimeter: 5.6 + 3*sqrt(.**)

Area: 1.36

Convex: no

Nb of invariant rotations: 1

Depth: 0

>>> polys.display()

The effect of executing polys.display() is to produce a file named polys_4.tex that can be given as

argument to pdflatex to produce a file named polys_4.pdf that views as follows.

20

4. Detailed description

4.1. Input. The input is expected to consist of ydim lines of xdim 0’s and 1’s, where xdim and ydim are at

least equal to 2 and at most equal to 50, with possibly lines consisting of spaces only that will be ignored and

with possibly spaces anywhere on the lines with digits. If n is the x

th digit of the y

th line with digits, with

0 ≤ x < xdim and 0 ≤ y < ydim , then n is to be associated with a point situated x × 0.4 cm to the right and

y × 0.4 cm below an origin.

4.2. Output. Consider executing from the Python prompt the statement from polygons import * followed

by the statement polys = Polygons(some_filename). In case some_filename does not exist in the working

directory, then Python will raise a FileNotFoundError exception, that does not need to be caught. Assume

that some_filename does exist (in the working directory). If the input is incorrect in that it does not contain

only 0’s and 1’a besides spaces, or in that it contains either too few or too many lines of digits, or in that

some line of digits contains too many or too few digits, or in that two of its lines of digits do not contain the

same number of digits, then the effect of executing polys = Polygons(some_filename) should be to generate

a PolygonsError exception that reads

Traceback (most recent call last):

...

polygons.PolygonsError: Incorrect input.

If the previous conditions hold but it is not possible to use all 1’s in the input and make them the contours

of polygons of depth d, for any natural number d, as defined in the general presentation, then the effect of

executing polys = Polygons(some_filename) should be to generate a PolygonsError exception that reads

Traceback (most recent call last):

...

polygons.PolygonsError: Cannot get polygons as expected.

If the input is correct and it is possible to use all 1’s in the input and make them the contours of polygons

of depth d, for any natural number d, as defined in the general presentation, then executing the statement

polys = Polygons(some_filename) followed by polys.analyse() should have the effect of outputting a first

line that reads

Polygon N:

with N an appropriate integer at least equal to 1 to refer to the N’th polygon listed in the order of polygons

with highest point from smallest value of y to largest value of y, and for a given value of y, from smallest value

of x to largest value of x, a second line that reads one of

Perimeter: a + b*sqrt(.**)

Perimeter: a

Perimeter: b*sqrt(.**)

with a an appropriate strictly positive floating point number with 1 digit after the decimal point and b an

appropriate strictly positive integer, a third line that reads

Area: a

with a an appropriate floating point number with 2 digits after the decimal point, a fourth line that reads one

of

Convex: yes

Convex: no

a fifth line that reads

Nb of invariant rotations: N

21

with N an appropriate integer at least equal to 1, and a sixth line that reads

Depth: N

with N an appropriate positive integer (possibly 0).

Pay attention to the expected format, including spaces.

If the input is correct and it is possible to use all 1’s in the input and make them the contours of polygons of depth d, for any natural number d, as defined in the general presentation, then executing the statement polys = Polygons(some_filename) followed by polys.display() should have the effect of producing a file named some_filename.tex that can be given as argument to pdflatex to generate a file named

some_filename.pdf. The provided examples will show you what some_filename.tex should contain.

• Polygons are drawn from lowest to highest depth, and for a given depth, the same ordering as previously

described is used.

• The point that determines the polygon index is used as a starting point in drawing the line segments

that make up the polygon, in a clockwise manner.

• A polygons’s colour is determined by its area. The largest polygons are yellow. The smallest polygons

are orange. Polygons in-between mix orange and yellow in proportion of their area. For instance, a

polygon whose size is 25% the difference of the size between the largest and the smallest polygon will

receive 25% of orange (and 75% of yellow). That proportion is computed as an integer. When the value

is not an integer, it is rounded to the closest integer, with values of the form z.5 rounded up to z + 1.

Pay attention to the expected format, including spaces and blank lines. Lines that start with % are comments.

The output of your program redirected to a file will be compared with the expected output saved in a file (of a

different name of course) using the diff command. For your program to pass the associated test, diff should

silently exit, which requires that the contents of both files be absolutely identical, character for character,

including spaces and blank lines. Check your program on the provided examples using the associated .tex files,

renaming them as they have the names of the files expected to be generated by your program.

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

 

掃一掃在手機打開當前頁
  • 上一篇:代寫股票指標 代做股票公式 代寫大智慧公式
  • 下一篇:MATH4063代做、代寫C++編程設計
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發動機性能
    挖掘機濾芯提升發動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
    合肥機場巴士2號線
    合肥機場巴士2號線
    合肥機場巴士1號線
    合肥機場巴士1號線
  • 短信驗證碼 豆包 幣安下載 AI生圖 目錄網

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

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

    99爱在线视频这里只有精品_窝窝午夜看片成人精品_日韩精品久久久毛片一区二区_亚洲一区二区久久

          欧美在线视频一区二区三区| 国产精品视频yy9299一区| 亚洲久久视频| 国产精品区一区二区三区| 另类尿喷潮videofree| 一二美女精品欧洲| 亚洲第一在线综合网站| 国产精品你懂的在线| 女生裸体视频一区二区三区| 欧美专区18| 亚洲男同1069视频| 亚洲先锋成人| 99精品欧美一区二区三区| 在线观看欧美成人| 国产一区二区三区高清在线观看| 国产精品v欧美精品∨日韩| 欧美mv日韩mv亚洲| 男女av一区三区二区色多| 欧美在线观看你懂的| 在线观看亚洲一区| 一区在线播放| 国产一区二区三区在线播放免费观看 | 国产日韩欧美精品一区| 欧美午夜a级限制福利片| 欧美高清在线一区| 欧美激情在线有限公司| 免费永久网站黄欧美| 老司机精品视频网站| 久久亚洲美女| 久久免费少妇高潮久久精品99| 欧美专区日韩专区| 久久久精品免费视频| 另类图片综合电影| 免费视频一区| 欧美日韩不卡视频| 欧美午夜视频| 国产精品久久午夜夜伦鲁鲁| 国产麻豆9l精品三级站| 国产亚洲欧美一级| 亚洲第一天堂无码专区| 99国产精品99久久久久久| 亚洲精品乱码久久久久久日本蜜臀 | 欧美区高清在线| 欧美日韩午夜在线| 国产日韩成人精品| 在线观看av一区| 亚洲精品黄色| 亚洲在线视频免费观看| 久久久国产午夜精品| 欧美成人在线免费视频| 欧美日韩精品在线视频| 国产精品jvid在线观看蜜臀| 国产欧美一区二区在线观看| 伊人色综合久久天天| 一区二区三区蜜桃网| 欧美一区二区三区啪啪| 欧美成人高清视频| 国产精品一区二区视频| 国产精品乱码人人做人人爱| 黑人极品videos精品欧美裸| 亚洲精品在线视频观看| 亚洲性感激情| 国产欧美一级| 国产精品丝袜久久久久久app| 国产一区二区日韩| 欧美精品在线免费| 欧美日韩亚洲一区二区三区| 国产精品日日摸夜夜添夜夜av| 狠狠入ady亚洲精品经典电影| 亚洲精品一区二区在线观看| 性亚洲最疯狂xxxx高清| 欧美国产日韩精品| 黄色一区二区三区| 亚洲一区二区三区在线看| 美女成人午夜| 国产精品手机视频| 亚洲精品资源| 久久夜色精品亚洲噜噜国产mv| 欧美午夜精品久久久久久超碰| 黑人操亚洲美女惩罚| 亚洲在线黄色| 免费成人高清视频| 一区二区三区免费在线观看| 亚洲精选一区二区| 美日韩丰满少妇在线观看| 国产欧美日韩在线播放| av不卡在线观看| 欧美激情综合色| 亚洲国产精品高清久久久| 欧美一级在线播放| 国产毛片一区二区| 亚洲视频日本| 欧美丝袜第一区| 亚洲一区二区三区四区中文| 欧美日韩精品在线观看| 99综合视频| 欧美日韩一区二区在线观看视频| 亚洲人午夜精品| 欧美日韩精品一区视频| 一区二区毛片| 欧美新色视频| 欧美一区二区三区免费在线看| 国产精品视频网| 久久成人av少妇免费| 激情视频一区| 欧美激情亚洲| 亚洲一区二区三区精品在线观看| 欧美理论电影在线观看| 99精品国产在热久久下载| 欧美日韩国产小视频| av成人天堂| 国产精品久久久久久久久久直播 | 极品尤物久久久av免费看| 久久九九精品99国产精品| 国产一区观看| 欧美精品激情blacked18| 日韩一级二级三级| 国产精品日本精品| 久久久久久91香蕉国产| 亚洲激情视频在线观看| 欧美视频在线观看一区| 欧美在线视频免费| 亚洲黄色av一区| 欧美先锋影音| 久久综合狠狠综合久久激情| 亚洲精选一区| 国产精品免费一区二区三区在线观看| 欧美一区亚洲二区| 日韩网站在线| 国内伊人久久久久久网站视频 | 美日韩免费视频| 亚洲一区二区三区四区中文| 狠狠色噜噜狠狠色综合久| 欧美日韩国产成人在线观看| 欧美中文字幕精品| 日韩一级在线| 伊人精品久久久久7777| 国产精品国产三级国产普通话99| 久久米奇亚洲| 亚洲欧美激情四射在线日 | 国际精品欧美精品| 国产精品高潮久久| 欧美电影免费观看网站| 久久精品一区二区三区四区| 亚洲免费久久| 亚洲成人资源| 国内成+人亚洲+欧美+综合在线| 欧美日韩1080p| 久久综合一区二区| 久久成人精品| 欧美中文字幕视频在线观看| 国产精品99久久不卡二区| 亚洲黄色av一区| 精品成人一区二区三区| 国产日韩一区二区三区在线| 欧美激情麻豆| 欧美精品首页| 欧美精品三区| 欧美激情久久久久久| 麻豆精品国产91久久久久久| 久久久av毛片精品| 欧美一区二区三区四区视频| 亚洲资源av| 亚洲一区二区三区免费视频| 一本色道久久综合亚洲精品不卡| 亚洲国产精品福利| 亚洲国产日韩美| 亚洲国产日韩欧美| 亚洲日本中文字幕免费在线不卡| 在线观看三级视频欧美| 黄色在线一区| 亚洲国产欧美不卡在线观看| 亚洲承认在线| 亚洲精品黄网在线观看| 亚洲级视频在线观看免费1级| 亚洲高清精品中出| 最新日韩精品| 国产精品99久久久久久久vr | 亚洲欧美日韩一区二区| 亚洲一区二区免费视频| 亚洲一区二区在线免费观看| 亚洲欧美视频| 久久免费观看视频| 欧美国产亚洲视频| 欧美天堂亚洲电影院在线观看| 国产精品xxx在线观看www| 国产精品拍天天在线| 国产一区二区三区最好精华液| 伊人久久大香线| 日韩性生活视频| 午夜亚洲伦理| 老色鬼久久亚洲一区二区| 欧美绝品在线观看成人午夜影视| 国产精品久久久久久久久果冻传媒| 国产拍揄自揄精品视频麻豆| 激情文学综合丁香| 99精品国产在热久久下载| 中文一区二区在线观看| 欧美在线一区二区| 欧美激情在线狂野欧美精品|