ACM题目(倒蛇阵填数)求java解法 [问题点数:50分]

Bbs1
本版专家分:0
结帖率 50%
Bbs1
本版专家分:85
其他相关推荐
ACM编程比赛入门题目之蛇形矩阵
蛇行矩阵 【问题描述】 蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。 【要求】 【数据输入】本题有多组数据,每组数据由一个正整数N组成。(N不大于100) 【数据输出】对于每一组数据,输出一个N行的蛇形矩阵。两组输出之间不要额外的空行。矩阵三角中同一行的数字用一个空格分开。行尾不要多余的空格。 【样例输入】 5 【样例输出】 1 3 6 10 15 2 5 9 14 4 8 1
Example 2.2 倒蛇阵填数
/* * main.cpp * * Created on: 2014年9月13日 * Author: xiangxiyun * * Description: 倒蛇阵填数 * * Example: when N = 4 * Output: 10 11 12 1 * 9 16 13 2 * 8 15 14 3 *
蛇阵
打印蛇阵.如键盘输入 4 5,则屏幕上输出如下矩阵:      1   2   3   4   5     10   9   8   7   6     11  12  13  14  15     20  19  18  17  16      再定义一个函数,把该矩阵存入文件"shezhen.f1",然后再从该文件读出该矩阵      并把它输出到屏幕上.(蛇阵.C) 思路:
ACM实习报告之蛇形矩阵
1.5【问题描述】蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。   2.需求分析本演示程序用VC++6.0编写,完成蛇形矩阵的生成。【输入】  本题有多组数据,每组数据由一个正整数N组成。(N不大于100)  【输出】  对于每一组数据,输出一个N行的蛇形矩阵。两组输出之间不要额外的空行。矩阵三角中同一行的数字用一个空格分开。行尾不要多余的空格。【输入范例】 5   【输出范例】 1 ...
蛇形填数(看准方向,循环)
 打印如下形式的矩阵; n=5: 1   2   9 10 25 4   3   8 11 24 5   6   7 12 23 16 15 14 13 22 17 18 19 20 21 n=6: 1   2   9 10 25 26 4   3   8 11 24 27 5   6   7 12 23 28 16 15 14 1
java】蛇形填数 螺旋填数
蛇形填数 在n*n的方阵里填成蛇形,例如:     1    2    3   4  5  16 17 18 19 6  15 24 25 20 7  14 23 22 21 8  13 12 11 10 9 原理:创建一个二维数组,将数组清零,用a[i][j]==0判断该位置是否已填数,用x,y记录下一个数的坐标,t记录填入的数字。 样例输入: 5 样例输出: 1
蛇形填数(矩阵)
蛇形填数        在 n x n 方针里填入 1,2,...,n x n,要求填成蛇形。例如:n=4时方阵为: 10 11 12 1 9   16 13 2 8   15 14 3 7     6   5 4      上面的方阵中,多余的空格只是为了便于观察规律,不必严格输出。n 【分析】        类比数学中的矩阵,可以用一个二维数组来储存题目中的方阵。只需声明一个
【经典算法】:蛇形填数,最简单的方法了。。。
问题概述什么是蛇形填数,百度一下即可 解法你能发现这里面的数为1到 n*n; 所以写个循环即可while(count=0 &&!a[x][y-1]) a[x][--y]=++count;//向左 while(x-1>
蛇形矩阵问题 java
蛇行矩阵 Problem 蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。 Input 本题有多组数据,每组数据由一个正整数N组成。(N不大于100) Output 对于每一组数据,输出一个N行的蛇形矩阵。两组输出之间不要额外的空行。 矩阵三角中同一行的数字用一个空格分开。行尾不要多余的空格。 Sample Input 5 Sample Ou
N阶蛇形矩阵生成(java)
生成一个n阶的蛇形矩阵的java程序 输入矩阵宽度n生成宽度为n的递增的蛇形矩阵
矩阵中填数. 当给出 N*N 的矩阵要求按蛇形填,回转填数
//蛇形填法 #include "stdio.h"void main(){    int n, i, j;    scanf("%d", &n);    int t = n*n;    for(i = n; i > 0; i--)    {        for(j = n; j > 0; j--)            printf("%5d", t--);        printf("/
acm蛇形填数
描述 在n*n方陈里填入1,2,...,n*n,要求填成蛇形。例如n=4时方陈为: 10 11 12 1 9 16 13 2 8 15 14 3 7 6 5 4 输入直接输入方陈的维数,即n的值。(n 输出输出结果是蛇形方陈。 样例输入 3 样例输出 7 8 1 6 9 2 5 4 3 思路:         若输入3,则矩阵最大数为3*3
算法竞赛入门经典 蛇形填数
蛇形填数
杭电oj(Java版)—— 2010 水仙花数
水仙花数 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 189976    Accepted Submission(s): 54259 Problem Description 春天是鲜花的季节,水仙花就是其中最迷人的代表
hdu 2010 水仙花数(java
水仙花数 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 119749    Accepted Submission(s): 35487 Problem Description 春天是鲜花的季节,水仙花就是其中最迷人的代表
java)蛇形矩阵(递归实现)
蛇形矩阵题意描述如下: Given an integer n, generate a square matrix filled with elements from 1 to n2 in spiral order. For example, Given n = 3, You should return the following matrix: [ [ 1, 2, 3 ],
求逆序数的多种解法
在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。思路1:暴力查询,双重for循环for(i=1;ia[j])       {            k++;
ACM:数论专题(5)——欧拉函数
题目描述:     定义函数φ(k)表示数字1...(k-1)中,和k互质的数字的个数。要求给定区间[L, R],找出在[L,R]范围内,φ(k)值最小的数字,如果有多个数字存在最小值,那么输出数值最小的一个。 解答: ·定理:        题目中定义的函数φ(k)称为“欧拉函数”,该函数具有如下的几个性质:     定理1:若:k为素数,那么:φ(k) = k-1
蛇形填数 数组解法(最简单)
解法 你能发现这里面的数为1到 n*n;  所以写个循环即可 while(countn*n){ while(x+1n && !a[x+1][y]) a[++x][y]=++count;//右下 while(y-1>=0 &&!a[x][y-1]) a[x][--y]=++count;//向左 while(x-1>=0 &&!a[x-1][y
四色问题的一个简单解
多年前写的1篇文章,无杂志肯发表,所以今天贴在这,供感兴趣的朋友,特别是做图形的朋友参考: 四色问题的一个简单解 提要:四色问题困扰了人类很多年。本文根据平面封闭图形两两相邻的可能性,结合奇偶排列,给出了此问题的一个初等解法,并指出需进一步研究的是国中国。希望有识之士能从中受到启发,考虑问题时能找到新的视点。关键词:四色问题,周边区域,奇偶数 0 引言:四色问题题目是很
[编程题]输出蛇形数组 Java版
题目:输入一个数n,输出n*n的蛇形数组。如输入n = 5,输出: 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 这道题主要是考虑边数组的边界问题,我们可以先一环一环的进行数组的赋值,代码如下: import java.util.*;public class Main{ public stat
ACM ——水仙花问题(难度为0)
用C/C++编写程序 描述 请判断一个数是不是水仙花数。其中水仙花数定义各个位数立方和等于它本身的三位数。 输入 有多组测试数据,每组测试数据以包含一个整数n(100输入0表示程序输入结束。 输出 如果n是水仙花数就输出Yes否则输出No 样例输入 153 154 0 样例输出 Yes No 代码: #include int main() {
ACM暴力解题题解(一)
1.1163-XTUOJ思路分析:    看到这道题目,一理清题目要求,题目要我们做什么。二看存储结构,输入输出格式。初看这道题目,会有点不理解这道题目的输入,到底是直接在键盘上把样例敲进去,还是说这个样例其实占了三行呢?没关系,实践是检验真理的唯一标准,经过测试发现,如果是把样例直接敲进去而不按enter键,无法实现题目的输出,我们试着往第二种思路想,样例占了三行,说明这些文字是先存储好,然后进...
C语言蛇形填数
思路就是:右-》下-》左-》上#include #include int a[10][10]; int main() { int i,j, n, num=0; memset(a, 0, sizeof(a)); scanf("%d", &n); num=a[i=0][j=0]=1; while(num < n*n)
腾讯 2015秋招笔试题 编程题2:九宫格填数
腾讯 2015秋招笔试题 题目: 2. 有下图的题解,请用 C/C++ 代码来列出满足下图 0-100 内的所有答案。 九宫格配合加减乘除,横竖都等于4 请你将1—8这八个数字填入方格中,在数字不允许重复的情况下,使横行和竖行的答案都等于4,你能填出来吗?      分析: 用a1~a9表示九个数,其中a3=
求解一个矩阵的逆矩阵
c++ #include using namespace std; const int N=20; const double E=1e-10; double calculate_A(double src[N][N], int n ) { int i,j,k,x,y; double tmp[N][N], t; double result = 0.0; if(n ==
蛇形矩阵递归算法
蛇形矩阵递归算法,通过简单地递归实现蛇形矩阵的输出
求逆序数对个数(微软2010年笔试题)
题目: 在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序数对。一个排列中逆序的总数就称为这个排列的逆序数。如{2,4,3,1}中,2和1,4和3,4和1,3和1是逆序数对,因此整个数组的逆序数对个数为4,现在给定一数组,要求统计出该数组的逆序数对个数。
矩阵填数-倒填、螺旋、蛇形
/*矩阵倒填*/ #include #define N 20 int main() { int i, j, n, m; int f[N][N] = {0}; printf("input a intger:"); scanf("%d", &n); printf("\n");
数论经典题目
题目:Special Prime   推导: n^b + p*n^(b-1) = m^b n^(b-1)*[n+p]=m^b 因为n里面要么有p因子,要么没有,所以 gcd(n^(b-1),n+p)=1或(含有p因子的数) 当gcd(n^(b-1),n+p)== (含有p因子的数)的时候,显然无解 因为 假设有解,那么n=K*p , K^(b-1) * p^b*(K+1) 如果希
C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵
C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵C++之蛇形矩阵
hdu1426一道很有意思的题目:数独
Problem Description 自从2006年3月10日至11日的首届数独世界锦标赛以后,数独这项游戏越来越受到人们的喜爱和重视。 据说,在2008北京奥运会上,会将数独列为一个单独的项目进行比赛,冠军将有可能获得的一份巨大的奖品———HDU免费七日游外加lcy亲笔签名以及同hdu acm team合影留念的机会。 所以全球人民前仆后继,为了奖品日夜训练茶饭不思。当然也包括初学者
ACM各题型OJ题目总结
本帖题目类型: 1)递归与分治 2)动态规划 3)贪心算法 4)回溯算法 5)图的搜索算法 6)图论 7)数论 8)组合数学 9)分支限界算法 推荐网站:https://vjudge.net/ 下面给出各题型的部分例题。 注:1.题目来源于ZOJ,POJ和HUD;         2.同一个题目可采用多种解法,本帖题目分类不代表最优解法
算法 acm dfs 油田问题
今天开始学习算法,DFS一个关于油田的问题,具体看问题描述和代码。 问题描述 GeoSurvComp地质调查公司负责探测地下石油储藏。 GeoSurvComp现在在一块矩形区域探测石油,并把这个大区域分成了很多小块。他们通过专业设备,来分析每个小块中是否蕴藏石油。如果这些蕴藏石油的小方格相邻,那么他们被认为是同一油藏的一部分。在这块矩形区域,可能有很多油藏。你的任务是确定有多少不同的...
四阶幻方的穷举求解.
速度太慢了,有时间研究构造四阶幻方的构造法…..#include "iostream" #include "algorithm" #include "queue" #include "vector" #include "list" using namespace std; bool isused[17] = { false }; int board[17]; queuex;#define
蛇 形 填 数
在n*n方阵里填入1,2,„,n*n,要求填成蛇形。例如n=4时方阵为  10    11   12   1    9    16   13   2    8    15   14   3   7     6     5    4   上面的方阵中,多余的空格只是为了便于观察规律,不必严格输出。n≤8。 #include #include #includ
【ACM】ACM练习——大数运算求高精度幂
1.问题描述Description对数值很大、精度很高的数进行高精度计算是一类十分常见的问题。比如,对国债进行计算就是属于这类问题。现在要你解决的问题是:对一个实数R( 0.0 &lt; R &lt; 99.999 ),要求写程序精确计算 R 的 n 次方(Rn),其中n 是整数并且 0 &lt; n &lt;= 25。InputT输入包括多组 R 和 n。 R 的值占第 1 到第 6 列,n 的...
ACM中杨辉三角的多种解法
杨辉三角的多种解法 杨辉三角的相信大家很熟悉吧,但是大家能用多少中方法写出来呀,一般人都只会想到两种,递归和二项式。当用递推时,有时在解题是根本没必要需要那么多呀,而只要杨辉三角的某一行,数据小时,我们可以用二项式来计算,但是数据比较大时,二项式算也是很麻烦的,那么还有其它的方法吗?所以下面我就介绍几种计算杨辉三角的方法吧。 主要要记住第四种。。。。 完整版下载:http://downl
【程序4】填数游戏
[java] view plaincopy /*【程序4】   * 作者  中国风   * 在小学奥数题中经常会看到一些填数字的游戏,   * 例如下(图)其中每个汉字代表一个不同的数字,   * 要求计算出这些汉字分别代表的是哪一个数字。   * 1.4  枚举(穷举)算法   * 1.4.2  实例:填数游戏   *           算法描述题
ACM-矩阵之递推式
ACM-矩阵之递推式
佩尔方程求解问题
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3292 题目大意:讲述的是滥竽充数的故事。有一个乐队,可以站成一个边长为x的正方形,也可以减去一个人,然后站成若干个边长为y的正方形,很明显乐队人数不是唯一的,现在让你找出第k大的乐队人数。 分析:根据题意可以提炼出二元不定方程x^2-D*y^2=1,典型的佩尔方程。首先我们知道,若
编程求幻方(魔方),1-N
题目来源: 2013.11.28 带的程序设计 I 上机(即大一C语言课程)。 题目描述: 有一种正方形的数字排列是一个5×5的数字幻方,即每个1到5的整数在每行每列都出现且出现一次。形式如下: 1 2 3 4 5 2 1 4 5 3 3 4 5 1 2 4 5 2 3 1 5 3 1 2 4 对于一个N×N的幻方,如果我们固定了第一行如下: 1 2 3 4 5...N 我们可以算出符合
求数组的最大值,次大值
在期末微机原理考试的时候,老师给我们出了一个题是求一段数的最大值,次大值,当时题目的要求使用汇编语言写的,这里我使用C++将相关算法表现出来。 求数组的最大值是很简单的,基本上每个会编程的人都会求,但是求次大值就稍微有点弯了…… 我当时的思路是这样的: 因为这一段数字都是正整数,所以我通过两次循环比较来实现,第一次遍历求得最大值,然后将最大值对应的位置的数字置零,第二次遍历求得次大值。 #
C语言每日小练(二)——蛇形填数
蛇形填数问题~
2016蓝桥杯省赛 方格填数(简单方法)
方格填数 如下的10个格子    +--+--+--+    |  |  |  | +--+--+--+--+ |  |  |  |  | +--+--+--+--+ |  |  |  | +--+--+--+ (如果显示有问题,也可以参看【图1.jpg】) 填入0~9的数字。要求:连续的两个数字不能相邻。 (左右、上下、对角都算相邻) 一共有多少种可能的填数方案? 请填写表示方案数目的...
【期望】acm题目
百事世界杯之旅 描述: ……在2003年6月之前购买的百事任何饮料的瓶盖上都会有一个百事球星的名字。只要凑齐所有百事球星的名字,就可以参加百事世界杯之旅的抽奖活动,获取球星背包、随身听,更可以赴日韩观看世界杯。还不赶快行动!……” 你关上电视,心想:假设有n个不同球星的名字,每个名字出现的概率相同,平均需要买几瓶饮料才能凑齐所有的名字呢? 输入: 输入一个数字n,2≤n≤33,表示不
【ACM】-斐波那契数列 -- 递归并不一定就是好
斐波那契数列 时间限制(普通/Java) : 1000 MS/ 10000 MS          运行内存限制 : 65536 KByte 总提交 : 5750            测试通过 : 2053  比赛描述 在数学上,斐波那契数列(Fibonacci Sequence),是以递归的方法来定义: F0 = 0 F1 = 1 Fn = Fn - 1 + Fn - 2
数独解题方法大全
数独解题方法大全
ACM--快速幂--次方求模
南阳oj地址:点击打开链接 次方求模 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 求a的b次方对c取余的值   输入第一行输入一个整数n表示测试数据的组数(n 每组测试只有一行,其中有三个正整数a,b,c(1= 输出输出a的b次方对c取余之后的结果 样例输入 3 2 3 5 3 10
acm竞赛资料解析,1993-1996
主要是关于acm竞赛的一些题目解法,和一些培训资料
C++蛇形填数
蛇形填数 问题描述: 在n*n方陈里填入1,2,...,n*n,要求填成蛇形。例如n=4时方陈为:  10 11 12 1   9 16 13 2   8 15 14 3   7  6   5  4 输入直接输入方陈的维数,即n的值。(n输出输出结果是蛇形方陈。 http://acm.nyist.net/JudgeOnline/problem.php?pid=33 问题分析:
杭电ACM2015:偶数求和
//输出格式出错 #include using namespace std; int main(){ int n, m, y, x, sum = 0, ave; int a[100]; while (cin >> n >> m){ x = n / m; y = n % m; for (int i = 0;
ACM交互题小结
今天才了解到还有交互题这种问题,很神奇,就不是平常写的那种传统题目。这种题目一般都是让你去输出东西询问,系统输入“YES”或“NO”作为回答,然后让你根据这些“YES”和“NO”得到最终答案。 前置知识: 在一些题目里面(我做的题目也没几道,可能片面了)会经常用到【fflush(stdout)】这个操作。这个操作的用处百度了一下,回答很多,大概的作用就是强制刷新输出缓冲区,将里面的内容输出出来...
ACM-最大子矩阵和
最大子矩阵和问题是对最大子序列和问题的扩展,即从一维扩展到了二维。但是解决此问题的方法和原来的方法并没有太大的差别,这里就以同样的动态规划的实录思路来求解此问题。原来subSum[i]代表包含ai并且以ai结束的子序列的最大和,状态转移方程为subSum[i+1] = subSum[i]<0 ? 0 : subSum[i]+a[i+1],因为subSum[i]为负将对总和做负贡献,所以此时将其丢弃
卡特兰数 Catalan数 ( ACM 数论 组合 )
卡塔兰数 卡塔兰数是组合数学中一个常出现在各种计数问题中出现的数列。由以比利时的数学家欧仁·查理·卡塔兰 (1814–1894)命名。 卡塔兰数的一般项公式为                       另类递归式:  h(n)=((4*n-2)/(n+1))*h(n-1); 前几项为 (OEIS中的数列A000108): 1, 1, 2, 5, 14, 42, 132, 429
ACM:二分查找,以及利用二分法来找上下界
(一)二分的模版: int binary_search(int *array, int length, int key) { int start = 0, end = length - 1; while(end >= start) { int middle = start + (end - start) / 2; int tmp = array[middle]; if(tmp <
斐波那契数列解法,矩阵解法,学习
链接:https://www.nowcoder.com/questionTerminal/c6c7742f5ba7442aada113136ddea0c3 来源:牛客网/*      * O(logN)解法:由f(n) = f(n-1) + f(n-2),可以知道      * [f(n),f(n-1)] = [f(n-1),f(n-2)] * {[1,1],[1,0]}      * 所以
java 蓝桥杯 方格填数
方格填数 如下的10个格子 (如果显示有问题,也可以参看【图1.jpg】) 填入0~9的数字。要求:连续的两个数字不能相邻。 (左右、上下、对角都算相邻) 一共有多少种可能的填数方案? 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。   代码如下:   import java.util.*; public class Main{ pr...
Java线程与并发编程实践
Java
编程之鸡兔同笼问题
程序中第七行给变量赋初值,第八行求鸡的只数,第九行求兔的只数量,最后输出结果,这种按顺序从上至下的求解过程,成为顺序结构程序设计
ACM hdu 数论题集
Volume 1 http://acm.hdu.edu.cn/showproblem.php?pid=1005 http://acm.hdu.edu.cn/showproblem.php?pid=1014 http://acm.hdu.edu.cn/showproblem.php?pid=1019 Volume 2 http://acm.hdu.edu.cn/showproblem.
java实现打印倒直角三角形
package cn.jbit.nestedloops; import java.util.Scanner; /** * 输入行数打印倒直角三角形 */ public class InvertRTriAngle { public static void main(String[] args) { int rows = 0; //三角形行数 System.out.print("请输入直
打印蛇阵
static int[,] arrNum = new int[5, 5];          static void Main(string[] args)         {             arrNum[0,0] = 1;             int j=0, k = 0;             for (int i =2; i             {
南阳理工学院ACM语言入门题目39水仙花数的思考与代码
水仙花数题目39的思考,思路与源代码
面试题目“ABCDE × 4 = EDCBA”新解法
ABCDE*4=EDCBA 在面试宝典上面看到的一道题目,也是一道老掉牙的题目了,题目详情:一个五位数字ABCDE*4=EDCBA,这五个数字不重复,请编程求出来.   网上流传的代码都是对5位数ABCDE的所有可能情况作遍历,即从10000 - 99999;我的想法是把对EDCBA作遍历,从遍历的范围来说,为原来的1/4,因为EDCBA必须能被4整除才可以,然后遍历的初始位置也发生改变,本来
ACM 数组蛇型走位
          import java.util.Scanner; public class One { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int i = scanner.nextInt(); ...
算法基础篇之穷举法实例——填数游戏
在小学奥数题中,经常会看到一些填数字游戏,其中每个汉字都表示一个不同的数字,
【小总结】用答案的性质来求解一些ACM题目
    以下是我在平时在做ACM练习时的一些心得体会,只是把自己的一些总结和想法分享一下。我写的东西也不知道是不是真的有价值,或许在大佬看来只是一个非常不成熟的想法(缺少社会的毒打.jpg)。   我们在构造或维护一个有特殊意义的数据结构的时候,往往可以不从改数据结构的“定义”入手,而从该数据结构的“性质”入手来构造或维护它。    举个线性代数上的例子,如果我们想维护一个正定二次型矩阵,我们可以...
2016年第七届蓝桥杯C/C++程序设计本科B组省赛 方格填数(结果填空)
方格填数 如图,如下的10个格子,填入0~9的数字。要求:连续的两个数字不能相邻。 (左右、上下、对角都算相邻)一共有多少种可能的填数方案? 请填写表示方案数目的整数。 思路:这题方法很简单,暴力求解,依次向每个格子填数与已经填入的进行比较是否连续,即:是否两者之差的绝对值为1。比赛的时候一直在纠结,题干没有说明0~9的数字可以重复使用还是只能用一次,比赛时最后我按照可以重复使用提
鸡兔同笼问题java暴力求解算法
public class A{ public static void main(String[] args) int HEAD=50; int FOOT=120; for(int x=0;X int y=HEAD-x; if(x*2+y*4==FOOT){ System.out.println("x="+x +","+y="+y); } } }
C++实现蛇形矩阵
C++实现蛇形矩阵昨天做了一道关于蛇形矩阵的算法题,觉得有点意思,下面记录一下我实现的过程。蛇形矩阵的意思,如图我的做法是创建一个动态二维数组,然后一层一层往内填数字:如上图,先是1-3,4-6,7-9,10-12。这是第一层,然后记录层数,一层层循环即可。但是在我调试的时候发现,如果是奇数行,最后中间那个数会没有被赋值,所以在代码最后加了个判断。代码实现#include #i
HDU-A+B Problem 的Java题解 用Java语言做ACM的注意事项
A+B问题应该可以说是做起来最开心的ACM题目了,杭电上从1089~1096全都是A+B问题,虽然都是水题,但是在此处也贴出来算了,八道题随便贴几道,内容没什么好说的,就加加加~~~就行啦。   因为题目比较简单,我今天又正好学完了Java第一季的课程,所以就尝试着用Java语言来提交这几道题,当然也遇到了第一次提交编译错误的问题,又在网上查了一下才知道用Java做ACM题是有些规定的。具体的因
ACM算法最小公倍数
 求最大公约数的算法小结:此算法属于数论,也基本的算法之一,十分重要,今天在化工大学比赛差点就废在这上面 (1)辗转相除法: #include  intmain(void)   /*  辗转相除法求最大公约数 */   {      int m,n, a, b, t, c;    printf("Inp
浙大OJ网址及ACM题目分类
浙大oj网址:http://acm.zju.edu.cn/onlinejudge/ 第一套 动态规划 :ZJU1558 难度:比较简单 博弈问题 :ZJU1913 难度:中等偏难 递归计算 :ZJU1500 难度:中等 最小生成树:ZJU1914 难度:中等   第二套 动态规划 :ZJU1107 难度:中等偏难 找规律  :ZJU2058 难度:比较简单 迭代计算 :ZJU1
在屏幕上打印N*N方阵的副上三角阵
题目:编程打印形如下面图形的n*n方阵的副上三角阵 1 3 6 10 15 2 5 9 14 4 8 13 7 12 11 (算法设计与分析P108第4题) 设计思路:仔细观察发现每一行的每个元素比它上一行的对应元素的下一个要小一,故考虑用一个整型向量容器来放置元素,然后每次对元素从下标较大的做起逐个加1,每次比上次少加一个元素,并且少输出一个下标最小
找规律填数字
题目描述 小宇正在读小学,今天老师布置了几道数学题目。小宇平时上课经常不专心,这些他可发愁了,怎么办呢?看看你能不能帮帮他。 题目是给你一组有规律序列的前面5个整数,请你给出它后面跟着的5个整数,如:1,2,3,4,5,___,___,___,__,___。这是个等差数列,后面应该是6,7,8,9,10,就这么简单。而且现在小宇已经知道这串序列要么是等差数列,要么是等比数列或者是斐波那契数列。
数独解法Java实现
数独问题描述 标准的数独游戏是在一个 9 X 9 的棋盘上填写 1 – 9 这 9 个数字,规则是这样的: 棋盘分成上图所示的 9 个区域(不同颜色做背景标出,每个区域是 3 X 3 的子棋盘),在每个子棋盘中填充 1 – 9 且不允许重复 ,下面简称块重复每一行不许有重复值 ,下面简称行重复每一列不许有重复值 ,下面简称列重复 如上红色框出的子区域中的亮黄色格子
动态规划总结与题目分类
源博客链接:http://blog.csdn.net/cc_again/article/details/25866971 动态规划一直是ACM竞赛中的重点,同时又是难点,因为该算法时间效率高,代码量少,多元性强,主要考察思维能力、建模抽象能力、灵活度。 动态规划(英语:Dynamic programming,DP)是一种在数学、计算机科学和经济学中使用的,通过把
OJ刷题---弟弟的作业
题目要求: 输入代码: #include #include//strlen必备头文件 #include//atoi(char )必备头文件 #include//isdigit(string )必备头文件 using namespace std; int main() { char str[10],num[10]; int a,b,c; int i,j,n
ACM程序设计题目 Problem O-15
输入一个n,输入n智能光颜色,求其中最多的颜色并输出,遇到0结束。       我是用二维数组做的,用那天讲的map映射好像更简单,。 思路就是判断a【i】与【i+1】是否相等,相等则+1,找出最大的并记录其下标。 #include using namespace std; int main() { int i,j,n,x=1,s=1,c; char a[100][10];
北大ACM题目分类1(适合树图专题)
原帖: 一些图论、网络流入门题总结、汇总 http://hi.baidu.com/zfy0701/blog/item/b8332b5c7b2dd545fbf2c052.html 搜索题目推荐及解题报告 http://hi.baidu.com/zfy0701/blog/item/c6e216ed18a9d24a78f05589.html 字符串题目推荐及解题报告 http://h
蛇形矩阵详解
问题描述: 在n*n方阵中填入1,2,3,....,n*n,要求填成蛇形状。 如 10  11  12  1 9   16  13  2 8   15  14  3 7   6   5   4 类似上面这种矩阵像蛇一样弯进来的。 分析: 首先,我们碰到矩阵这一类问题,我们可以将里面的数据使用二维数组存储。 其实每一个蛇形矩阵都是从第一行第n列开始的,先向下移动,当发现移动不了(这里的意思是指越界...
acm--找出n之内的所有完数及因子
/* *程序的版权和版本声明部分: *Copyright(c)2013,烟台大学计算机学院学生 *All rights reserved. *文件名称: *作者:田成琳 *完成日期:2013年 12月 24 日 *版本号:v1.0 *对任务及求解方法的描述部分: *输入描述: 一个数n Sample Input 1000 *问题描
杭电acm试题解析和答案
这是关于杭电的一些acm的解题答案和解析思路
重庆大学2018编程大赛赛题
A.放置鲜花问题import java.util.Scanner; 公共课Main { // static int MAXarrSize = 20000; public static void main(String [] args){ int n; 扫描仪扫描仪=新扫描仪(System.in); String line = scanner.nextLine()...
ACM练习题-java编写
1. 括号配对问题: package com.util; import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * 括号配对问题: 现在,有一行括号序列,请你检查这行括号是否配对。 * * 输入: 第一行输入一个数N(0&lt;N&lt;=100),...
acm-输出水仙花数
/* *程序的版权和版本声明部分: *Copyright(c)2013,烟台大学计算机学院学生 *All rights reserved. *文件名称: *作者:田成琳 *完成日期:2013年 10月23 日
java 求水仙花数
java 求水仙花数 java 求水仙花数 java 求水仙花数
java求任意阶乘
java求任意数的阶乘,java求任意数的阶乘,java求任意数的阶乘
蛇与梯子问题的贪心算法设计
“蛇和梯子”是一个在N×N(0<=20)的方格棋盘上进行的游戏。(见下图) 方格从1到N的平方编号。除了第1号和最后编号的方格,其它的格子都有可能有蛇或梯子存在(蛇和梯子的数量及具体位置由输入确定,它们的数量都在100之内并且蛇和梯子不能临近放置,也就是在任何了放置两者首尾的方格之间至少还有一个未放置任何东西的格子)。开始的时候玩家把他们的标志物放在1号格子中。玩家轮流以扔骰子的方式移动他们的指示物。如果一个指示物到达了一条蛇的嘴部,则把它移回蛇的尾部。如果一个指示物到达了一个梯子的底部则将它移动到梯子的顶部。如果你是一个可以自由控制骰子的高手,现在请求出你至少需要扔几次骰子才能到达标为N^2的格子。(比如在上图所示例一中,你的方案应该是走4步到达5并由梯子上升到16,再走4步到达20并由梯子上升到33,然后走3步。这样,你一共需要扔3次骰子。而在例二中,你的方案应该是连扔4个6。)
ACM 大数 大数阶乘
原题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=28 描述:         我们都知道如何计算一个数的阶乘,可是,如果这个数很大呢,我们该如何去计算它并输出它? 我的问题:          代码:     #include int main(){ int i,n,a[50000],k,v=0,j,m=0;
蓝桥杯--求3个数的最小公倍数
细心的人不难发现,这个坑爹的蓝桥杯的OJ做的如此之粗糙与恶劣,还设置了坑爹的VIP,想钱之疯魔程度,简直是不忍直视啊。题目上面说1~N-1, 后面给的样例就变成的从1~N里面筛选,这种赤裸裸的扇自己脸的行为,我只能呵呵了。        小规模吐槽完毕,接下来进入正题:        这个题的意思就是要我们在1~N的范围内找三个数,使他们的最小公倍数在这个范围内的组合是最大的。那么你的
杭电 HDU 1108 最小公倍数
最小公倍数 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 38524    Accepted Submission(s): 21499 Problem Description 给定两个正整数,计算这两个数的最小公倍数。
ACM组合数学题目列表
基本组合计数 HDU 1028 Ignatius and the Princess III 整数划分 HIT 1402 整数划分问题 多种整数划分 置换群 PKU 2369 求置换的周期 1026 求置换的循环节 1721 置换的幂运算 3270 置换的循环节,黑书题 1879 模拟+置换的循环节 HDU 1537 求三
关于图论中最短路径的五道题-ACM
关于图论中最短路径的五道题-ACMACM队内训练第六周的专题是图论中最短路径问题,今晚终于把五道题目都AC了,下面依次总结一下并奉上代码。 题目列表 对应poj题目 poj1125 Stockbroker Grapevine poj3615 Cow Hurdles poj1847 Tram poj1502 MPI Maelstrom poj1860 Currency Excha
极差问题:c++求解1-10的极差问题的初等解法
1.问题的描述        在黑板上一共有1-10 共10 个数,,进行如下操作:每次擦去其中的两个数a和b,然后在数列中加入一个数a*b+1,如此下去直至黑板上只有一个数,在所按的操作方式得到的数当中,最大的为max,最小的为min,则该数列的极差定义为M=max-min;对于给定的数列: arr[] = { 1,6,5,9,8,4,3,7,2,10 };编程计算极差M。 2.问题的分析 ...
acm题目解法
acm题目 里面有题目而且有实现的代码 可以帮你更好的掌握解题的方法
杭电ACM--与进制有关的oj题
HDU  1720 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1720 题目意思是输入两个16进制的数,求它们之和的10进制数。 如果大家还记得%X(%x)代表16进制的话,这个题目就很简单了。 代码如下: #include using namespace std; int main() { int a,b; while(scanf
九宫格填数acm
关于acm深搜的一道不错的习题,主要是有些设计还是有值得学习的地方的
我们是很有底线的