oj

YTU OJ 1701: 统计数字问题

有些话、适合烂在心里 提交于 2019-11-29 06:43:37
题目描述 一本书的页码从自然数1 开始顺序编码直到自然数n。书的页码按照通常的习惯编排,每个页码都不含多余的前导数字0。例如,第6 页用数字6 表示,而不是06 或006 等。数字计数问题要求对给定书的总页码n,计算出书的全部页码中分别用到多少次数字0,1, 2,…,9。给定表示书的总页码的10 进制整数n (1≤n≤109) 。计算书的全部页码中分别用到多少次数字0,1,2,…,9。 输入 输入数据只有1 行,给出表示书的总页码的整数n。 输出 输出数据共有10行,在第k行输出页码中用到数字k-1 的次数,k=1,2,…,10。 样例输入 11 样例输出 1 4 1 1 1 1 1 1 1 1 代码如下: # include <stdio.h> # include <stdlib.h> # include <string.h> void deal ( int a [ ] , int i ) { int j = 0 ; while ( i != 0 ) { a [ i % 10 ] ++ ; i / = 10 ; } } int main ( ) { int a [ 10 ] = { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } ; int i , n ; scanf ( "%d" , & n ) ; for ( i = 1 ; i <= n ;

CentOS环境下搭建青岛大学OJ

杀马特。学长 韩版系。学妹 提交于 2019-11-29 04:16:29
1.安装必要的依赖 sudo yum update sudo yum -y install epel-release sudo yum -y install python-pip sudo yum clean all sudo yum -y install python-pip pip install docker-compose sudo yum -y install vim sudo yum -y install curl sudo yum install -y git 2.安装 Docker (建议参见官方github文档) curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh - (找不到这个的镜像) curl -sSL https://get.daocloud.io/docker | sh sudo systemctl start docker sudo systemctl enable docker docker version 3.开始安装 (选择好安装路径运行命令) git clone -b 2.0 https://github.com/QingdaoU/OnlineJudgeDeploy.git && cd

<每日 1 OJ> -LeetCode20. 有效的括号

怎甘沉沦 提交于 2019-11-29 00:59:21
题目: 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。 示例 1: 输入: "()" 输出: true 示例 2: 输入: "()[]{}" 输出: true 示例 3: 输入: "(]" 输出: false 示例 4: 输入: "([)]" 输出: false 示例 5: 输入: "{[]}" 输出: true 代码: bool isValid(char* s) { if( s == NULL ) return false; char *stack = (char *) malloc( sizeof(char) * ( strlen(s)+1 ) ); int top = 0; for( int i=0; s[i]!='\0'; i++) { if(s[i]=='(' || s[i]=='[' || s[i]=='{') //左括号入栈 stack[++top] = s[i]; else if( (s[i]==')'&&stack[top]=='(') || (s[i]==']'&&stack[top]=='[') || (s[i]=='}'&&stack[top]=='{') ) //右括号比对 top--;

OJ网站汇总

筅森魡賤 提交于 2019-11-28 20:39:22
http://poj.openjudge.cn/ POJ http://openjudge.cn/ 百炼 https://www.luogu.org/ 落谷 http://codevs.cn/ 天梯系统 https://nanti.jisuanke.com/acm 计蒜客 https://www.nowcoder.com/activity/oj 牛客 https://www.dotcpp.com/oj/ 含蓝桥杯VIP题目 http://www.51mxd.cn/ 南阳理工学院oj https://acm.ecnu.edu.cn/ 华东师范大学oj 来源: https://www.cnblogs.com/trnanks/p/11427045.html

百炼OJ - 1002 - 方便记忆的电话号码

给你一囗甜甜゛ 提交于 2019-11-28 20:36:11
题目链接 思路 开个一千万的数组计数,最后遍历即可。 #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; int num=0; int mymap[10000000] = {0}; int change(char a[201]) { int j=0, result=0; for(int i=0;i<strlen(a);i++) { if(a[i] == '-') continue; if(a[i] <= '9' && a[i] >= '0') { result = result*10+a[i]-'0'; continue; } if( a[i] <= 'O' && a[i] >= 'A' ) { result = result*10+ (int)((a[i]-'A')/3) + 2; continue; } switch (a[i]) { case 'P': case 'R': case 'S': result = result*10+7; break; case 'T': case 'U': case 'V': result = result*10+8; break; case 'W': case 'X': case 'Y': result = result*10+9;

cqyz oj | 循环逆序对 | 逆序对 | 树状数组

陌路散爱 提交于 2019-11-28 20:21:15
Description   0~n-1数字组成的序列,然后进行这样的操作,每次将最前面一个元素放到最后面去会得到一个序列,每得到一个序列都可得出该序列的逆序数(如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数)。要求求出最小的逆序数。 Input 输入包含若干组数据,每组数据包含两行,第一行为整数n,第二行是一个0..n-1的排列。 Output 每组数据输出一行一个整数,表示最小的逆序对数量。 Sample Input 1 10 1 3 6 9 0 8 5 7 4 2 Sample Output 1 16 Hint n<=100 000 最多不超过10组数据. 逆序对的一种常规的做法就是归并排序,但是对于这道题,对n个序列进行n次归并排序,时间达到了O(n*n logn),超时。 题目中说下一个序列是将这一个序列的第一个元素提到最后而成的, 容易发现这两个序列有很大部分逆序对是相同的,只有有关于改动的那个元素的逆序对变化了。 每次将a[1]放到最后,整个序列的逆序对增加了 b - l 对, 其中b是后面比a[1]大的元素个数,即新增的逆序对数量, l是后面比a[1]小的元素个数,即减少的逆序对数量 求出b和l就能以O(1)的时间向下一个序列转移 可以用树状数组先求出a[i]的左边和右边分别有几个元素比a

Comet OJ - Contest #9 & X Round 3

烈酒焚心 提交于 2019-11-28 20:20:23
目录 A. 等差数列 title analysis code B. 小道消息 title analysis code C. 核心城市 title analysis code D. 系统设计 title analysis code E. Namid[A]me title analysis code F. Unknown Mother-Goose title analysis code A. 等差数列 title 【XR-3】等差数列 简化题意: 小 X 给了你一个等差数列的前两项以及项数,请你求出这个等差数列各项之和。 等差数列:对于一个 \(n\) 项数列 \(a\) ,如果满足对于任意 \(i \in [1,n)\) ,有 \(a_{i+1} - a_i = d\) ,其中 \(d\) 为定值,则称这个数列为一个等差数列。 \(|a_1|,|a_2| \le 10^6\) 。 \(3 \le n \le 10^6\) 。 analysis 等差数列求和公式: \[ S_n=na_1+\frac{n*(n-1)}{2}d \] 注意开 long long 。 时间复杂度: \(O(1)\) 。 code #include<bits/stdc++.h> typedef long long ll; namespace IO { char buf[1<<15],*fs,*ft;

国内C/C++刷题网站汇总

╄→尐↘猪︶ㄣ 提交于 2019-11-28 19:20:42
作者:Luau Lawrence 链接:https://www.zhihu.com/question/25574458/answer/31175374 来源:知乎 - Welcome To PKU JudgeOnline 北京大学的Online Judge。POJ上面的题目有点老了,但好处是做的人多,经典算法题多,解题报告也多,适合上手。 - ZOJ : Home 浙江大学的Online Judge。ZOJ用的不多,但为数不多的几次体验好像都还可以,值得尝试。 - Welcome to Hangzhou Dianzi University Online Judge 杭州电子科技大学的OJ。杭电OJ在近几年取代了POJ,成为是目前国内最主流的OJ。它的题目丰富,难度梯度合理,广受全国各大高校的青睐。每年也会有大大小小的比赛挂在杭电的OJ上举办,去年的亚洲区网络赛也是在这上面做的。由此可见其在国内广大ACMer心目中的地位。也正因为如此,网上hdu的解题报告也很多,适合个人进阶训练。 - UVa Online Judge 西班牙Valladolid大学的Online Judge。是最古老也是全世界最知名的Online Judge,题库有详细的分类:如世界总决赛题目,刘汝佳的题目等等。题目目类型非常广泛。绝大部分的题目难度偏易,适合初学者磨练程序设计。 - Timus Online

Comet OJ - Contest #9 & X Round 3B

為{幸葍}努か 提交于 2019-11-28 17:22:29
Comet OJ - Contest #9 & X Round 3B 其实这个题我一开始,完全⑧会. 题目里给了个关于素数的定理,就考虑一下素数在这题里扮演什么样的角色. 然后你发现,如果他第 \(0\) 天告诉了一个素数,那么只需要一天所有人就都知道了. 如果是一个合数,那么第一天所有素数会知道消息,第二天所有人就都知道了. 需要注意的是,要考虑它第 \(0\) 天告诉一个素数时,如果这个素数的倍数也在这个区间内,是需要两天的. \(Code:\) #include <algorithm> #include <iostream> #include <cstdlib> #include <cstring> #include <cstdio> #include <string> #include <vector> #include <queue> #include <cmath> #include <ctime> #include <map> #include <set> #define MEM(x,y) memset ( x , y , sizeof ( x ) ) #define rep(i,a,b) for (int i = a ; i <= b ; ++ i) #define per(i,a,b) for (int i = a ; i >= b ; -- i) #define

<每日 1 OJ> -内存文件系统

白昼怎懂夜的黑 提交于 2019-11-28 13:21:28
蛮有意思的,主要考查链表和树结构的知识。 代码如下: ******************************************************************************/ #include "FileManager.h" //#include <stdafx.h> #include "stdio.h" #include "string.h" #include "map" #include "malloc.h" #define NO 0 #define OK 1 //文件定义 链表结构 //文件定义 struct file { char filename[300]; struct file *nextf;//p310 链表 *nextf 是指针变量,指向结构体变量,存放下一个节点的地址 }; // struct dir { char dirName[300]; struct dir* subDir; //子目录 struct dir* borDir; //兄弟目录 struct dir* parDir; //父目录 struct file* fhead;//当前目录的文件 }; //全局根目录初始化 struct dir root={"root",NULL,NULL,NULL,NULL}; /* 功能描述:根据目录名获得目录指针 参数描述