首页 > TAG信息列表 > N
cf1100 没看懂题意
https://codeforces.com/contest/1726/problem/B 英文 the bitwise XOR of all elements in a (which are strictly less than ai) is 0. 在a中比ai小的所有元素小于0 首先n>m一定无法构造。然后异或和为0,代表着小于ai的aj一定有偶数个,因为aj^aj=0。为了方便,我们首先用1填充,如果n%输入两个整数,求加减乘的结果
#include<stdio.h> main() { int n,m,sum,ca,chen; scanf("%d %d",&n,&m); sum=n+m; ca=n-m; chen=n*m; printf("%d %d %d\n",sum,ca,chen); printf("%d\n%d\n%d",sum,ca,chen); }CF1294C
题目简化和分析: 使得 \(a \times b\times c=n~~~~(a\ne b\ne c)\) 思路: 先枚举最小的 \(a\) ,(以下程序的返回值为最小因数(有部分优化),即 \(a\) 的值) int query(int n){ if(n%2==0) return 2; for(int i=3;i<=sqrt(n);i+=2){ if(n%i==0) return i; } return n; } 再枚举最常量折叠
可折叠的常量像宏一样,在预编译阶段对常量的引用一律被替换为常量所对应的值,就和普通的宏替换没什么区别。 #define PI 3.14 int main() { const int r = 10; int p = pI; //这里会在预编译阶段产生宏替换,PI直接替换为3.14,其实就是int p = 3.14; int len = 2*r;sql计算前top n%的数据
背景 实际工作中经常遇见求top10或者top10%此类的需求,下面针对这些情况做一个小小的总结。 实现代码 先来说top n这种情况,这是比较常见的排序需求,使用窗口函数可以解决,常见的窗口函数见链接hive sql 专用窗口函数 这其中细微的差别,使用的时候需要注意: -- 常见的分组排序窗1281. Subtract the Product and Sum of Digits of an Integer
!!!题目地址!!! int subtractProductAndSum(int n){ int product = 1; int sum = 0; while(n != 0){ product *= n%10; sum += n%10; n /= 10; } return product-sum; }用&来代替%原理
为什么&取模比%更快: 因为&是直接对内存中的二进制码进行操作,因此也不需要转换为10进制,所以更快。 例如 n %8 = n&7;也就是 n%a = n&(a-1); 原理 7的二进制码为:0 0 0 0 0 1 1 1假设n = 10 ,对应的二进制码为:0 0 0 0 1 0 1 010&7得到0 0 0 0 0 0 1 0 相当于保留了10的1-7范围的二进制码算法珠玑——双百故事
https://leetcode-cn.com/problems/happy-number/submissions/ class Solution { public: bool isHappy(int n) { short times = 7; int num; while(n != 1 && --times) { num = 0; while(n) {移动距离
一个蛇形矩阵,给你两个数字,求最少的移动距离:只能横着走或竖着走 这个移动的距离好求:横坐标的差+纵坐标的差 #include<iostream> #include<cmath> using namespace std; int main(){ int w,m,n; cin>>w>>m>>n; m--,n--; int x1,y1,x2,y2; x1=m/w; x2=n/w;C语言 多级指针
C语言多级指针 (指向指针的指针) include <stdio.h> int main(void) { int i = 100,j = 200; int p; int q; int l; p = &i; q = &p; l = &q; printf("%d\n%d\n%d\n%d\n",l,q,p,i); l = &j; printf("%d\n%d\n%d\n%d\n",l,*q,*p,j); retu输出100以内的素数
int isprime(int n){ int i; for ( i = 2; i < n/2; i++) { if (n%i == 0) { return 0; } return 1; }}int main(){ int i; for ( i = 2; i <= 100; i++) { if (实验2_10_数字统计一 (100 point(s))
请你写一段程序,统计各类数字的占比。 提示:输出%时需要用%%才能输出。 输入格式: 只有一行,为用空格分隔的若干整数,最后一个整数为0。测试用例保证输入中只包含这一个0。 输出格式: 共三行,依次分别输出3、5、7的倍数的占比(如果某个数同时为多个数的倍数,如15,70等,则不参与统计,但要计《算法笔记》3.4小节——入门模拟->日期处理
《算法笔记》3.4小节——入门模拟->日期处理 A 日期差值题目描述输入输出样例输入样例输出提交代码 B Day of WeekC 打印日期题目描述输入输出样例输入样例输出代码提交 D 日期类题目描述输入输出样例输入样例输出提示代码提交 E 日期累加题目描述输入输出样例输入样例Submit solution(1200)
#include<bits/stdc++.h> using namespace std; int n,k; int main(){ int t; cin>>t; while(t--){ scanf("%d %d",&n,&k); if(n%4==0){ printf("%d %d %d\n",n/2,n/4,n/4); }2021第十二届蓝桥杯省赛c++B组_卡片
// #include<bits/stdc++.h> using namespace std; int card[10]; bool judge( int n ) { while( n ) { card[ n%10 ]--; if( card[ n%10 ]<0 ) return false; // n/=10; } return true; } int main() { int i;判断今天是今年的第多少天
这是之前自己老师出的一题,自己当时采用了比较笨的方法。将平年跟闰年每月的天数放进两个数组内 p[12]={31,28,31,30,31,30,31,31,30,31,30,31}, r[12]={31,29,31,30,31,30,31,31,30,31,30,31}; 然后判断是闰年还是平年,然后使用不同的数组来计算天数 #include<stdio.h> int nprime.
// 埃氏筛 // a[i]==0 is prime char a[MAXN]; void sieve( ll n ) { memset( a,0,sizeof(a) ); ll temp=(ll)sqrt(n),i,j; for( i=3;i<=temp;i+=2 ) { // 直接 !a[i] 判断是否为素数 if( !a[i] ) for( j=i*i;j<=n;j+=i ) a[j]=1; // 同样运用 开方求递归函数的构建
我刚看完关于递归的视频,老师留下两道作业。 1.用递归函数解决,汉诺塔问题。 2.一只青蛙,每次只能跳1步或2步,构造递归函数求到第n个台阶有多少种跳法。 这可让我犯难,不过老师讲过斐波那契数列,这两题和他应有相同之处。于是,我就利用数学上的函数关系式表明结果之间的关系式。 对于第判断一个数能否同时被3和5整除
题目描述 判断一个数n 能否同时被3和5整除,如果能同时被3和5整除输出YES,否则输出NO。 输入 输入一行,包含一个整数n。( -1,000,000 < n < 1,000,000) 输出 输出一行,如果能同时被3和5整除输出YES,否则输出NO。 样例输入 15 样例输出 YES #include <bits/stdc++.h> using namespaceC 的几个课后练习题
1)试编写程序实现如下效果 姓名 年龄 成绩 性别 爱好 xx xx xx xx xx 要求: a、用变量将姓名、年龄、成绩、性别、爱好存储 b、添加适当的注释 c、添加转义字符 #include<stdio.h> void main(){ char name[20] = "欢欢"; //定义姓名欢欢 int age = 18; //定义年龄18 fColoring Rectangles
一开始考虑分类讨论,但是发现考虑的逻辑范围有点多,就很烦躁了。 其实此题如果n%3==0或者m%3==0,都可以直接求出答案,那么实际上要考虑的其实只有n%3!=0&&m%3!=0的情况。 对于这种情况,没必要分四种情况讨论。其实对于任意一个情况,在处理掉可以被整除的部分后,剩余的部分其实只需要把一维字符串数组拷贝到二维字符串数组中
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> int main() { char A[10] = { "ABCDE" }; int i = 0; char B[10][10] = { "" }; char C[10] = { "" }; while (i<10) {400.第N位数字
题目描述: 给你一个整数 n ,请你在无限的整数序列 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ...] 中找出并返回第 n 位数字。 示例 1: 输入:n = 3 输出:3 示例 2: 输入:n = 11 输出:0 解释:第 11 位数字在序列 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ... 里是 0 ,它是 10 的一部分。 提示:CSDN2021-11-27“每日一练”
CSDN2021-11-27“每日一练” 今天的“每日一练”,学会了两个简单的。 第一题目第二题目第三题目 第一题目 实现效果 完整代码 import re #用于提取字符串中的数字 def re_number(s): '''提取字符串中的数字''' l = re.findall(r'\d+', s) return [int(【函数学习笔记】编写函数输出一个十进制整数的十六进制形式
7-3 编写函数输出一个十进制整数的十六进制形式 (100 分) 案例拓展 编写函数输出一个十进制整数的十六进制形式 编写函数,函数的参数是整数N,在函数中输出整数N的十六进制形式(递归方法实现)。主函数中输入整数a和b,输出从a到b的所有整数的十六进制形式。具体输出格式参考样例。