题解:LOJ540游戏
题目描述
小L计划进行n场游戏,每场游戏使用一张地图,小 L 会同时使用三辆车在该地图上完成游戏。
小 L 的赛车有三辆,分别用大写字母 A、B、C 表示。地图是一张无向简单图(没有重边或自环),每次他会在地图中选择不同的三个点 i,j,k满足\(i<j<k\)且两两之间均有边。此时他会让 A 从i到j,B 从j到k,C从k到i,完成一场游戏。他记得有一张地图使得他恰好能完成n场不同的游戏,且这个地图顶点数不超过500,请你帮他找到这张地图。
有时候小L会记得地图的一些特点,他会把这些告诉你以帮助你找到地图。
也就是说,给一个正整数n,请你构造一个无向简单图使得其三元环个数为n。
说实话这个题一看以为是什么高深的玩意,完全看不出是NOIP的难度
做这个题的时候,各位神犇需要做的就是,把之前学的各种算法,数据结构全忘了QAQ
蒟蒻的搜索T到飞起
#include<algorithm>
#include<iostream>
#include<cstring>
#include<cstdio>
#include<vector>
#include<queue>
using namespace std;
#define re register
#define ll long long
#define gc getchar()
inline int read()
{
re int x(0),f(1);re char c(gc);
while(c>'9'||c<'0')f=c=='-'?-1:1,c=gc;
while(c>='0'&&c<='9')x=x*10+c-48,c=gc;
return f*x;
}
const int N=505;
int f[N][N],a[N],b[N],c[N],n;
int main()
{
n=read();
int i,tot;
for(tot=1;n;tot++)
{
for(i=1;i<tot&&i*(i-1)/2<=n;i++)
f[i][tot]=1;
n-=(i-1)*(i-2)/2;
}
cout<<tot<<endl;
for(i=1;i<tot;i++)
{
for(int j=i+1;j<=tot;j++)
cout<<(f[i][j]|f[j][i])<<" ";
cout<<endl;
}
return 0;
}
题解:LOJ540游戏的更多相关文章
- P1000题解 超级玛丽游戏
P1000这么难,必须要水一篇题解/斜眼笑 ******** ************ ####....#. #..###.....##.... ###.......###### ### ### .. ...
- LOJ540 游戏 构造
传送门 题意:给出$N$,试构造一个点数小于$500$的图,使得其中三元环的个数恰好为$N$.$N \leq 2 \times 10^6$ 首先构造一个尽可能大的完全图,然后在这个完全图旁边加点.尽可 ...
- CCF-CSP题解 201604-4 游戏
bfs #include <bits/stdc++.h> const int maxn = 100; using namespace std; int n, m, t; bool hasD ...
- 【Luogu2197】NIM游戏(博弈论)
题面 洛谷 题解 \(Nim\)游戏模板题 #include<iostream> #include<cstdio> #include<cstdlib> using ...
- 【BZOJ1022】小约翰的游戏(博弈论)
[BZOJ1022]小约翰的游戏(博弈论) 题面 BZOJ 题解 \(Anti-SG\)游戏的模板题目. #include<iostream> #include<cstdio> ...
- 洛谷 2197 nim游戏
题目描述 甲,乙两个人玩Nim取石子游戏. nim游戏的规则是这样的:地上有n堆石子(每堆石子数量小于10000),每人每次可从任意一堆石子里取出任意多枚石子扔掉,可以取完,不能不取.每次只能从一堆里 ...
- Codeforces Round#687 Div2 题解
打这场的时候迷迷糊糊的,然后掉分了( A Prison Break: 题面很复杂,但是题意很简单,仅需求出从这个点到四个角的最大的曼哈顿距离即可 #include <bits/stdc++.h& ...
- 题解西电OJ (Problem 1006 - 转盘游戏)--动态规划
题目链接 : http://acm.xidian.edu.cn/land/problem/detail?problem_id=1006 Description wm最近喜欢上一种无聊的转盘解锁游戏,他 ...
- “盛大游戏杯”第15届上海大学程序设计联赛夏季赛暨上海高校金马五校赛题解&&源码【A,水,B,水,C,水,D,快速幂,E,优先队列,F,暴力,G,贪心+排序,H,STL乱搞,I,尼姆博弈,J,差分dp,K,二分+排序,L,矩阵快速幂,M,线段树区间更新+Lazy思想,N,超级快速幂+扩展欧里几德,O,BFS】
黑白图像直方图 发布时间: 2017年7月9日 18:30 最后更新: 2017年7月10日 21:08 时间限制: 1000ms 内存限制: 128M 描述 在一个矩形的灰度图像上,每个 ...
随机推荐
- MySQL 笔记整理(10) --MySQL为什么有时会选错索引?
笔记记录自林晓斌(丁奇)老师的<MySQL实战45讲> (本篇内图片均来自丁奇老师的讲解,如有侵权,请联系我删除) 10) --MySQL为什么有时会选错索引? MySQL中的一张表上可以 ...
- Ubuntu 16.04 nvidia-smi报错(重装Nvidia驱动)
之前因为学习TensorFlow,所以在自己的Ubuntu上安装了cuda,cudnn以及Nvidia驱动.但可能是由于自己经常不注重正常关闭自己的Ubuntu,这就导致了一个问题: 某天在查看自己的 ...
- es6 字符串的扩展和数值的扩展
es6字符串的扩展 1. es6新增的一些方法 1.1 includes 判断是否包括在内,返回一个 true or false 1.2 statsWith 判断是否以什么开头,返回一个 true o ...
- 为Jekyll+GitHub Pages添加全文搜索功能
动态演示如下: [上传失败, 请自行搜索原文] 源码库: program-in-chinese/team_website 找到此JS工具: christian-fei/Simple-Jekyll-Se ...
- java 线程池 ---- newSingleThreadExecutor()
class MyThread implements Runnable{ private int index; public MyThread(int index){ this.index = inde ...
- ANT property三种使用方式
方式一:引入*.properties文件 1.在cms.properties文件中定义属性 userName=admin 2.在build.xml中引入属性 <property file=&qu ...
- golang 调用windows API 中文的处理
Go语言发展势头很猛,其实缺点也很多,好在有广大爱好者提供了无数的库,把优点表现得太好了,搞得什么都是拿来就使用,基本完全不理会指针,性能还不错. 最近在windows下使用遇到一个中文的问题,首先要 ...
- 剑指offer:调整数组顺序使奇数位于偶数前面
题目 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分. 分析 事实上,这个题比较简单,很多种方式都可以实现,但是其时间复杂度或空间复 ...
- Java注解原理
1. @interface不是接口是注解类,使用@interface自定义注解时,自动继承了java.lang.annotation.Annotation接口,由编译程序自动完成其他细节 2. @in ...
- 好程序员分享该如何选择background-image和img标签
好程序员分享该如何选择background-image和img标签,用img标签 如果你希望别人打印页面时候包含这张图片请使用img标签 当这张图片有非常有意义的语义,比如警告图标,请使用img标签及 ...