码迷,mamicode.com
首页 > 其他好文 > 详细

Codeforces441C_Valera and Tubes(暴力)

时间:2019-05-06 18:52:04      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:text   lease   each   condition   bit   nta   test   ase   div   

Valera and Tubes
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

Valera has got a rectangle table consisting of?n?rows and?m?columns. Valera numbered the table rows starting from one, from top to bottom and the columns – starting from one, from left to right. We will represent cell that is on the intersection of row?x?and column?y?by a pair of integers?(x,?y).

Valera wants to place exactly?k?tubes on his rectangle table. A tube is such sequence of table cells?(x1,?y1),?(x2,?y2),?...,?(xr,?yr), that:

  • r?≥?2;
  • for any integer?i?(1?≤?i?≤?r?-?1)?the following equation?|xi?-?xi?+?1|?+?|yi?-?yi?+?1|?=?1?holds;
  • each table cell, which belongs to the tube, must occur exactly once in the sequence.

Valera thinks that the tubes are arranged in a fancy manner if the following conditions are fulfilled:

  • no pair of tubes has common cells;
  • each cell of the table belongs to some tube.

Help Valera to arrange?k?tubes on his rectangle table in a fancy manner.

Input

The first line contains three space-separated integers?n,?m,?k?(2?≤?n,?m?≤?300;?2?≤?2k?≤?n·m) — the number of rows, the number of columns and the number of tubes, correspondingly.

Output

Print?k?lines. In the?i-th line print the description of the?i-th tube: first print integer?ri?(the number of tube cells), then print?2ri?integersxi1,?yi1,?xi2,?yi2,?...,?xiri,?yiri?(the sequence of table cells).

If there are multiple solutions, you can print any of them. It is guaranteed that at least one solution exists.

Sample test(s)
input
3 3 3
output
3 1 1 1 2 1 3
3 2 1 2 2 2 3
3 3 1 3 2 3 3
input
2 3 1
output
6 1 1 1 2 1 3 2 3 2 2 2 1
Note

Picture for the first sample:

技术图片

Picture for the second sample:

技术图片
解题报告
让每一个人两个,剩下给第一个
#include <iostream>
#include <cstdio>
#include <cstring>

using namespace std;
int mmap[310][310];
int main()
{
    int n,m,k;
    while(cin>>n>>m>>k)
    {
        int t=n*m-(k-1)*2;
        int x=1,y=1;
        printf("%d",t);
        while(t--)
        {
            printf(" %d %d",x,y);
            mmap[x][y]=1;
            if(y+1<=m&&!mmap[x][y+1])
            {
                y++;
            }
            else if(y-1>=1&&!mmap[x][y-1])
                y--;
            else x++;
        }
        k--;
        while(k--)
        {
            printf("\n2");
            t=2;
            while(t--)
            {
                printf(" %d %d",x,y);
                mmap[x][y]=1;
                if(y+1<=m&&!mmap[x][y+1])
                {
                    y++;
                }
                else if(y-1>=1&&!mmap[x][y-1])
                    y--;
                else x++;
            }
        }
        printf("\n");
    }
}


Codeforces441C_Valera and Tubes(暴力)

标签:text   lease   each   condition   bit   nta   test   ase   div   

原文地址:https://www.cnblogs.com/ldxsuanfa/p/10821174.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
分享档案
周排行
mamicode.com排行更多图片
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!