Magic of David Copperfield II(奇偶性)
题目大意:这是一个魔术游戏,首先把你的手指放在一个左上角的格子里面,然后魔术师说你可以移动K1步,移动完之后,他会删除一些方格,并且说,你肯定不在这里,删除的方格不可以再去了,然后让你再走K2步,继续删除一些格子,直到就剩下一个格子为止,魔术师就可以说抓住你了,输出每个Ki和删除的格子。
分析:比较明显的利用了奇偶性质,所以每次走奇数步的话就可以了,删除的格子可以从左下角开始,把相同奇偶性质的都给删除即可,注意数N<=K<300,当N等于100的时候,K只能从100开始.............
代码如下:
===========================================================================================================================
#include<stdio.h>
#include<algorithm>
#include<vector>
using namespace std; const int MAXN = ; int main()
{
int i, j, N;
vector<int> G[MAXN*]; scanf("%d", &N); for(i=; i<=N; i++)
for(j=; j<=N; j++)
{
if(i+j- > N)
G[N+].push_back((i-)*N+j);
else
G[i+j].push_back((i-)*N+j);
} int cnt = N; for(i=N+; i>; i--)
{
printf("%d", cnt);cnt = (cnt& ? cnt+:cnt+);
for(j=; j<G[i].size(); j++)
printf(" %d", G[i][j]);
printf("\n");
} return ;
}
Magic of David Copperfield II(奇偶性)的更多相关文章
- 构造 - SGU 109 Magic of David Copperfield II
Magic of David Copperfield II Problem's Link Mean: 略 analyse: 若i+j为奇数则称(i,j)为奇格,否则称(i+j)为偶格,显然每一次报数后 ...
- 109. Magic of David Copperfield II 构造 难度:2
109. Magic of David Copperfield II time limit per test: 0.25 sec. memory limit per test: 4096 KB The ...
- sgu 109 Magic of David Copperfield II
这个题意一开始没弄明白,后来看的题解才知道这道题是怎么回事,这道题要是自己想难度很大…… 你一开始位于(1,1)这个点,你可以走k步,n <= k < 300,由于你是随机的走的, 所以你 ...
- SGU 分类
http://acm.sgu.ru/problemset.php?contest=0&volume=1 101 Domino 欧拉路 102 Coprime 枚举/数学方法 103 Traff ...
- 投入OJ的怀抱~~~~~~~~~~
OpenJudge C20182024 信箱(1) 账号 修改设定 退出小组 管理员 frank 林舒 Dzx someone 李文新 公告 11-05 程序设计与算法(大学先修课) 成员(61910 ...
- <老友记>学习笔记
这是六个人的故事,从不服输而又有强烈控制欲的monica,未经世事的千金大小姐rachel,正直又专情的ross,幽默风趣的chandle,古怪迷人的phoebe,花心天真的joey——六个好友之间的 ...
- Web API 之CRUD
注:例子来自微软Web API官网(https://www.asp.net/web-api/overview/data/using-web-api-with-entity-framework/part ...
- no screens found! ubuntu进不了图形界面了
no screens found! ubuntu进不了图形界面了 结果是没装显卡 startx error. reinstall xorg, x server doesn't work. driver ...
- Keras学习~第一个例子~跑MNIST
import numpy as npimport gzip import struct import keras as ks import logging from keras.layers impo ...
随机推荐
- HTTP状态吗汇录
页面Http状态查询工具说明 建议直接Ctrl+F来查找状态码 如果向您的服务器发出了某项请求要求显示您网站上的某个网页,那么,您的服务器会返回 HTTP 状态代码以响应该请求. 如果向您的服务器发出 ...
- java学习之反射机制
java语言区别于C,C++等准静态语言的最大特点就是java的反射机制.静态语言的最直接定义就是不能在运行时改变程序结构或变量的类型.按照这样的定义,python,ruby是动态语言,C,C++,J ...
- 设计模式之 State 状态模式
状态模式的核心在于 1. 状态的转换导致行为(Handle)的差异,比如人的状态是饿的时候,吃(Handle)的行为是2个馒头,人状态是不太饿的时候,吃(Handle)的行为是半个馒头 2. Stat ...
- O(1)检测2的幂次
class Solution { public: /* * @param n: An integer * @return: True or false */ bool checkPowerOf2(in ...
- CSS_Bootstrap
①BS学习的基础 第一个例子 <!DOCTYPE html> <html lang="en"> <head> <title>Boot ...
- hierarchyviewer偶然不能使用的解决方法
在DDMS的device中可以看到设备,并显示可以debug的状态,可以看到不显示进程的信息,但是hierarchyviewer也却不显示各个Window. 在控制台的打印信息如下: - hierar ...
- 用MFC如何高效地绘图
显示图形如何避免闪烁,如何提高显示效率是问得比较多的问题.而且多数人认为MFC的绘图函数效率很低,总是想寻求其它的解决方案. MFC的绘图效率的确不高但也不差,而且它的绘图函数使用非常简单,只 ...
- 关于script,first,second,third=argv运行出错的问题
from sys import argv input(argv) #python自带的IDLE直接执行不能提供命令行参数 script,first,second,third=argv print(&q ...
- C语言的指针
指针是C语言中非常重要的数据类型,那么什么是指针呢? 指针类型就是用来用来存放变量地址的变量,指向某个变量. 指针的一般形式:*指针变量名 int *p; float *p1; “*”是用来说明这个变 ...
- PS证件照换背景
综述 博主原创内容. 在PS里,对于抠图,比较有技术含量的便是抠头发丝了,下面为大家带来一个比较详细的抠头发丝的教程. 素材准备 在这里我们用这张图片作为抠图素材,下面让我们一步步来演示抠图的过程,并 ...