这题是红题,我都觉得我的题解过不了

这道题输入不像别的题,给一个参数 n ,然后输入 n 的倍数个数据,它是给一个 n ,

再输入一堆数。看题目,n × n ? 是不是就说明了给出的数和一定,都是 n × n ?

显然是的。

这样就好办了:

#define maxn 40010
int n,a[maxn],f,i,j,s;
int read(){//快读
    int r=0,f=1;//r置零,f为标记,正数与负数
    char c=getchar();//字符c的读入
    while((c<'0'||c>'9')&&c!='-')//读入其他字符
        c=getchar();
    if(c=='-')//若该数为负数
        f=-1,c=getchar();
    while(c<='9'&&c>='0')//读入数字
        r=r*10+c-'0',c=getchar();
    return r*f;//正还是负
}
n=read();
    while(s<n*n)
        a[++f]=read(),s+=a[f];

看上去很冗长,但知识点只有 #define、上面推出来的输入方式和快读。

快读?

大家肯定会疑惑:快读是什么?

快读,从字面上来理解就是快速读入。

快读的本质就是将读入一个整数转化为输入一个字符再减 ‘0’ 。

为什么呢?因为输入一个字符再减 ‘0’ 比读入一个整数快很多。

但这里数据不大,可用可不用

define 则是定义。如上 #define maxn 40010 则是定义 maxn 为 40010。

接下来往下走。

输出时,必须要记得换行,否则会错。

那么应该怎么实现呢?

s=0;//前面用过,置零
for(i=1;i<=f;i++){//i循环,导出数组
    if(i%2)//i的奇偶性
        for(j=1;j<=a[i];j++){//j循环,输出0
            printf("0");
            s++;//计数换行标志
            if(s%n==0)
                printf("\n");//特判换行
        }
    else//否则,因为i mod 2不是1就是0
        for(j=1;j<=a[i];j++){//j循环,输出1
            printf("1");
            s++;//计数换行标志
            if(s%n==0)
                printf("\n");//特判换行
        }
}

我觉得这道题也就这些知识点了 应该是我太弱才没有发现其他知识点

下面贴出完整代码:

#include<bits/stdc++.h>
#define maxn 40010
using namespace std;
int n,a[maxn],f,i,j,s;
int read(){
    int r=0,f=1;
    char c=getchar();
    while((c<'0'||c>'9')&&c!='-')
        c=getchar();
    if(c=='-')
        f=-1,c=getchar();
    while(c<='9'&&c>='0')
        r=r*10+c-'0',c=getchar();
    return r*f;
}
int main(){
    n=read();
    while(s<n*n)
        a[++f]=read(),s+=a[f];
    s=0;
    for(i=1;i<=f;i++){
        if(i%2)
            for(j=1;j<=a[i];j++){
                printf("0");
                s++;
                if(s%n==0)
                    printf("\n");
            }
        else
            for(j=1;j<=a[i];j++){
                printf("1");
                s++;
                if(s%n==0)
                    printf("\n");
            }
    }
    return 0;
}

洛谷加油!OI冲鸭!

题解 P1319 【压缩技术】的更多相关文章

  1. 洛谷P1319压缩技术 题解

    题目传送门 这道题是入门难度的题.特别水...QWQ...... #include<bits/stdc++.h> using namespace std; *],top; int main ...

  2. P1319 压缩技术

    很多小伙伴卡在此题的原因可能是因为不知道怎么让它输入无限个数字吧?除了用string,在这里我是看到“压缩码保证 N * N=交替的各位数之和”这一句话,想到用while循环.只要输入的数的总和t小于 ...

  3. (Java实现) 洛谷 P1319 压缩技术

    题目描述 设某汉字由N X N的0和1的点阵图案组成,如下图.我们依照以下规则生成压缩码.连续一组数值:从汉字点阵图案的第一行第一个符号开始计算,按书写顺序从左到右,由上至下.第一个数表示连续有几个0 ...

  4. 【洛谷p1319】压缩技术

    (许久不见,甚是想念) 压缩技术[传送门] 洛谷上滴算法标签: 然而这是一道入门难度的题.(不管不管,就写它了) 好的先说一下思路吧wait!我忘记了咋做的当时. 首先做题第一道坎儿,如何输入若干个( ...

  5. P1319 【压缩技术】

    题面嘤嘤嘤 刚做完P1320,突然发现这里有一个没有括号的压缩技术,就抱着试一试的心态来做一做... 洛谷真有趣,让我正着做一遍,反着做一遍... 好,进入正题 这题比较便捷的是边读边做 具体细节看代 ...

  6. Java后端实现图片压缩技术

    今天来说说图片压缩技术,为什么要使用图片压缩,图片上传不就完事了吗?对的,这在几年前可以这么说,因为几年前还没有现在这么大的并发,也没有现在这么关注性能. 如今手机很多,很多人都是通过手机访问网络或者 ...

  7. C语言中的内存压缩技术

    C语言中的内存压缩技术 前言 在整个研究生阶段我都在参与一个LTE协议栈实现的项目,在这个项目中,我们利用一个自己编写的有限状态机框架将协议栈中每一层实现为一个内核模块.我们知道,在编写内核代码时需要 ...

  8. 转:关于数据库压缩技术的Survey

    原文来自于:http://outofmemory.cn/mysql/database-compression-tech 昨天给团队内的小伙伴做了一个关于数据库压缩技术的Survey,现将其中可以公开的 ...

  9. 腾讯技术分享:GIF动图技术详解及手机QQ动态表情压缩技术实践

    本文来自腾讯前端开发工程师“ wendygogogo”的技术分享,作者自评:“在Web前端摸爬滚打的码农一枚,对技术充满热情的菜鸟,致力为手Q的建设添砖加瓦.” 1.GIF格式的历史 GIF ( Gr ...

  10. 【RMAN】使用RMAN的 Compressed Backupsets备份压缩技术 (转载)

    1.Oracle参考文档中关于RMAN备份压缩的描述1)关于如何通过调整RMAN参数启用取消备份压缩功能http://download.oracle.com/docs/cd/B19306_01/bac ...

随机推荐

  1. IOS swift实现密码的显示与隐藏切换

    最近做项目遇到一个需要做密码的显示与隐藏功能,简单从功能上讲是比较简单的,但是,ios有个恶心的BUG,就是在切换显示密码后再隐藏密码时输入就被清空了,这个非常不友好,为了解决这个问题,我在网上找了相 ...

  2. 《SQL 进阶教程》 case:练习题1-1-3 用 ORDER BY 指定顺序进行排序

    select name from greatestsORDER BY case when name ='B' then 1 when name ='A' then 2 when name ='D' t ...

  3. 给奇数的li标签添加蓝色,给偶数的li标签添加红色

    今天遇到的面试题,哎,不看参考手册还是写的蛋疼啊!给奇数的li标签添加红色,给偶数的li标签添加蓝色 直接撸代码吧: <!DOCTYPE html> <html lang=" ...

  4. DateAdapterForDay

    public class DateAdapterForDay extends XmlAdapter<String, Date> { private SimpleDateFormat dat ...

  5. AnkhSVN使用手册

    (一) 安装: Subversion客户端安装------AnkhSVN AnkhSVN是一款在VS中管理Subversion的插件,您可以在VS中轻松的提交.更新.添加文件,而不用在命令行或资源管理 ...

  6. GCD Guessing Game Gym - 100085G 猜数字 gcd

    http://codeforces.com/gym/100085/attachments 因为那个数字是一个质数,这样的猜的次数是最多的,所以至少是质数次. 但是如果需要猜2.3,那么可以直接猜6,也 ...

  7. HDU 5445——Food Problem——————【多重背包】

    Food Problem Time Limit: 3000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)To ...

  8. Timer控制开始、停止例子【转】

    public partial class Form1 : Form    {       static public bool flag;         public Form1()        ...

  9. SpringMVC05 return (Json)

    这里要主要的是js文件要引入,文中不做解释 1.导入包 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xs ...

  10. View模块

    一.应用场景 通过View的类注释,可知,Backbone.view是一个JS构造函数,与DOM中的某一块UI相对应,通过注册模型层数据的监听,可实现视图的自动渲染. Backbone.View模块也 ...