杭电acm1002为什么老出错

#include

int main(void)
{
int T = 0, a = 0, count_a = 0, count_b = 0;
long long A[1000] = { 0 }, B[1000] = { 0 }, SUM[1000] = { 0 };

scanf("%d", &T);

while (T > 0)
{
    a++;
    scanf("%lld %lld", &A[a], &B[a]);
    SUM[a] = A[a] + B[a];

    T--;
}
for (T = 1; T <= a; T++)
{
    printf("Case %d:\n%lld + %lld = %lld\n\n", T, A[T], B[T], SUM[T]);
}

}
为什么不能这么做??每次提交显示wrong answer!why?

1个回答

杭电acm 1002
杭电ACM1002
杭电ACM----------1002 A+B problemII
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
杭电ACM2034代码,老出错。
我写的代码哪里有问题呀,改好几遍了。。。 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=2034 #include<stdio.h> #include<vector> #include<iostream> #include<algorithm> using namespace std; int main() { int n,m; while(scanf("%d%d",&n,&m)) { if(n==0&&m==0) break; int a[n],b[m]; int count=0; vector<int> v; for(int i=0;i<n;i++) { scanf("%d",&a[i]); v.push_back(a[i]); } for(int i=0;i<m;i++) scanf("%d",&b[i]); for(int i=0;i<n;i++) { for(int j=0;j<m;j++) { if(a[i]==b[j]) { v.erase(v.begin()+(i-1)); count++; } } } if(count==n) { printf("NULL\n"); } else { sort(v.begin(),v.end()); for(int i=0;i<v.size()-1;i++) printf("%d ",v[i]); printf("%d\n",v[v.size()]); } } return 0; }
杭电acm 1002,有点崩溃,老是出错,感觉格式什么的都对呀
#include <stdio.h> #include <string.h> int main(){ char ax[20][1000], bx[20][1000], temp[1000], a[1000], b[1000]; int n, lena, lenb; while(scanf("%d",&n)!= EOF){ for(int i = 0;i < n;i++){ scanf("%s %s",ax[i],bx[i]); } for(int i = 0;i < n;i++){ int num[1001] = {0}; strcpy(a,ax[i]); strcpy(b,bx[i]); lena = strlen(a); lenb = strlen(b); if(lena < lenb){ strcpy(temp,a); strcpy(a,b); strcpy(b,temp); lena = strlen(a); lenb = strlen(b); } int carry = 0; int len = lena; int add = 0; for(int j = 0;j < len;j++){ if(lenb > 0){ add = a[lena-1] - '0' + b[lenb-1] - '0' + carry; num[lena] = add % 10; carry = add / 10; lena--; lenb--; } else{ add = a[lena-1] - '0' + carry; num[lena] = add % 10; carry = add / 10; lena--; lenb--; } } num[0] = carry; printf("case %d:\n",i+1); printf("%s + %s = ",a,b); if(num[0] == 0){ for(int j = 1;j <= len;j++){ printf("%d",num[j]); } printf("\n"); } else{ for(int j = 0;j <= len;j++){ printf("%d",num[j]); } printf("\n"); } printf("\n"); } } return 0; } 经典的大数相加,题目如下: Problem Description I have a very simple problem for you. Given two integers A and B, your job is to calculate the Sum of A + B. Input The first line of the input contains an integer T(1<=T<=20) which means the number of test cases. Then T lines follow, each line consists of two positive integers, A and B. Notice that the integers are very large, that means you should not process them by using 32-bit integer. You may assume the length of each integer will not exceed 1000. Output For each test case, you should output two lines. The first line is "Case #:", # means the number of the test case. The second line is the an equation "A + B = Sum", Sum means the result of A + B. Note there are some spaces int the equation. Output a blank line between two test cases. Sample Input 2 1 2 112233445566778899 998877665544332211 Sample Output Case 1: 1 + 2 = 3 Case 2: 112233445566778899 + 998877665544332211 = 1111111111111111110 程序跑图贴在下面,大牛们帮看看吧
杭电ACM1002,老是不能AC,一直都是Wrong Answer
修改了几次,现在是在是没看出问题在哪,求指教,感激不尽。 ``` #include<iostream> #include<string> using namespace std; int main(){ int num_case=0; string data1_str="",data2_str=""; int data1_size=0,data2_size=0; int mark=0; int index=0; int j=0; int sum_rs[1001]={0},data1[1001]={0},data2[1001]={0}; cin>>num_case; for (int i = 0; i < num_case; i++) { memset(data1,0,sizeof(data1)); memset(data2,0,sizeof(data2)); index=0; mark=0; cin>>data1_str; cin>>data2_str; data1_size=data1_str.length(); data2_size=data2_str.length(); for(j=0;j<data1_size;j++){ char tmp=data1_str[data1_size-j-1]; data1[j]=atoi(&tmp); } for(j=0;j<data2_size;j++){ char tmp=data2_str[data2_size-j-1]; data2[j]=atoi(&tmp); } for (j = 0; j < 1001; j++) { sum_rs[j]=data1[j]+data2[j]+mark; if (sum_rs[j]>=10) { sum_rs[j]%=10; mark=1; }else { mark=0; } } for (j =0; j < 1001; j++) { if (sum_rs[j]!=0) { index=j; } } cout<<"Case "<<i+1<<":"<<endl; cout<<data1_str<<" + "<<data2_str<<" = "; for (int j =index; j >=0; j--) { cout<<sum_rs[j]; } cout<<endl; if(i!=num_case-1) cout<<endl; } return 0; } ```
杭电ACM1002 A+B问题2 小弟花了一下午实在看不出错在哪了
简单说 ,要求输入一个数T,作为计算次数,接着计算两个超过32位但不超过1000位的正整数。 求大神们看看错哪了 #include <stdio.h> #include <string.h> int main() { int T,num=0,i,len,len1,len2; char str1[1001],str2[1001]; scanf("%d",&T); while(T--) { int a[1001]={0},b[1001]={0},c[1001]={0},k=0; scanf("%s",str1); scanf("%s",str2); len1=strlen(str1); len2=strlen(str2); len=(len1>len2)?len1:len2; for(i=0;i<=len1-1;++i) a[i]=str1[len1-1-i]-'0'; for(i=0;i<=len2-i;++i) b[i]=str2[len2-1-i]-'0'; for(i=0;i<=len-1;++i) { c[i]=(a[i]+b[i]+k)%10; k=(a[i]+b[i]+k)/10; } printf("Case %d:\n",++num); printf("%s + %s = ",str1,str2); if(k) printf("1"); for(i=len-1;i>=0;--i) printf("%d",c[i]); printf("\n"); if(T >= 1) printf("\n"); } return 0; } 下面是错误的结果图 ![图片说明](https://img-ask.csdn.net/upload/201608/05/1470390765_693412.png) ![图片说明](https://img-ask.csdn.net/upload/201608/05/1470390785_475900.png)
杭电acm1036,为什么wa
附上我的代码以及AC代码 ``` #include<iostream> #include<string> #include<iomanip> using namespace std; int main() { int n,t,m,ss,flag; double d,sum,temp; string T; cin>>n>>d; if(n<1||n>20)return 0; if(d<0.0||d>200.0)return 0; while(cin>>t) { sum=0,flag=0; for(int i=0;i<n;i++) { cin>>T; if(T=="-:--:--") { cout<<setw(3)<<t<<": -"<<endl; flag=1; break; } sum+=((T[0]-'0')*3600+((T[2]-'0')*10+(T[3]-'0'))*60+(T[5]-'0')*10+(T[6]-'0')); } if(!flag) { sum/=d; temp=(int)(sum+0.5); m=temp/60; ss=temp-m*60; if(ss>10) cout<<setw(3)<<t<<": "<<m<<":"<<ss<<" min/km"<<endl; else cout<<setw(3)<<t<<": "<<m<<":"<<'0'<<ss<<" min/km"<<endl; } } } ``` AC代码 ``` #include <stdio.h> #include <math.h> #include <string.h> int main() { char s[10]; int n,H,MM,SS,T; double dist,tot,ave; scanf("%d%lf",&n,&dist); while(~scanf("%d",&T)) { tot = 0.0; bool flag = true; for(int i = 0;i < n;i++) { scanf("%s",s); if(!strcmp(s,"-:--:--")){ flag = false; }else { sscanf(s,"%d:%d:%d",&H,&MM,&SS); tot += H*3600.0 + MM*60.0 + SS*1.0; } } if(flag == false){ printf("%3d: -\n",T); }else { ave = tot / dist; int ans = floor(ave+0.5); printf("%3d: %d:%02d min/km\n",T,ans/60,ans%60); } } return 0; } ```
杭电ACM OJ 1005 Number Sequence
A number sequence is defined as follows: f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7. Given A, B, and n, you are to calculate the value of f(n). 超过49个数之后一定会出现和之前的数组合相同的情况,这个我可以了解,但是 为什么最多经过49个数之后一定会出现周期呢?智商太低了,跪求解释
求助,杭电ACM题求平均成绩
题目如下: **求平均成绩** 假设一个班有n(n<=50)个学生,每人考m(m<=5)门课,求每个学生的平均成绩和每门课的平均成绩,并输出各科成绩均大于等于平均成绩的学生数量 。 **Input** 输入数据有多个测试实例,每个测试实例的第一行包括两个整数n和m,分别表示学生数和课程数。然后是n行数据,每行包括m个整数(即:考试分数)。 **Output** 对于每个测试实例,输出3行数据,第一行包含n个数据,表示n个学生的平均成绩,结果保留两位小数;第二行包含m个数据,表示m门课的平均成绩,结果保留两位小数;第三行是一个整数,表示该班级中各科成绩均大于等于平均成绩的学生数量。 每个测试实例后面跟一个空行。 **Sample Input** 2 2 5 10 10 20 **Sample Output** 7.50 15.00 7.50 15.00 1 _____ 请各位大佬帮我看一下哪里有问题,自己运行结果是正确的,但放到oj上就WA。 ```c #include<stdio.h> #include<string.h> int main(){ int n,m,i,j,ans=0; double sum=0,a[51][6],x[6]; int s[51]; memset(s,1,51); while(scanf("%d%d",&n,&m)!=EOF){ for(i=1;i<=n;i++){ for(int j=1;j<=m;j++){ scanf("%lf",&a[i][j]); } } for(i=1;i<n;i++){ for(j=1;j<=m;j++){ sum+=a[i][j]; } printf("%.2lf ",sum/m); sum=0; } for(j=1;j<=m;j++){ sum+=a[n][j]; } printf("%.2lf\n",sum/m); sum=0; for(i=1;i<m;i++){ for(j=1;j<=n;j++){ sum+=a[j][i]; } x[i]=sum/n; printf("%.2lf ",x[i]); sum=0; } for(j=1;j<=n;j++){ sum+=a[j][m]; } x[m]=sum/n; printf("%.2lf\n",sum/n); sum=0; for(i=1;i<=n;i++){ for(j=1;j<=m;j++){ if(x[j]>a[i][j]){ s[i]=0; } } } for(i=1;i<=n;i++){ if(s[i]){ ans++; } } printf("%d\n\n",ans); } return 0; } ```
杭电acm1039我的代码为什么AC不了?
``` #include<iostream> #include<string> using namespace std; int main() { string in; char temp; int flag, flagv; int vowel = 0; int consonant = 0; while (cin >> in) { if (in == "end") break; flag = 1; flagv = 0; temp = '~'; for (int i = 0; i < in.size(); i++) { if (in[i] == 'a'||in[i]=='e'||in[i]=='i'||in[i]=='o'||in[i]=='u') { consonant = 0; flagv = 1; vowel++; if (vowel == 3) { flag = 0; break; } } else { vowel = 0; consonant++; if (consonant == 3) { flag = 0; break; } } if (temp == in[i] &&in[i]!='e'&&in[i]!='o') { flag = 0; break; } else temp = in[i]; } cout << "<" << in << "> " << "is "; flag == 1&&flagv==1 ? cout << "acceptable" : cout << "not acceptable"; cout << endl; } return 0; } ```
求问杭电ACM2010水仙花数,我的这个答案为什么是错的
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int m=0; int n=0; while(in.hasNext()){ m=in.nextInt(); n=in.nextInt(); if(m<n){ narcissus(m,n); } } } public static void narcissus(int m, int n){ int k=0; boolean mark = false; for(int i=m; i<=n; i++){ int sum=0; k=i; while(k!=0){ sum=sum+(k%10)*(k%10)*(k%10); k=k/10; } if(i==sum) { mark = true; System.out.print(i+" "); } } if(mark==false){ System.out.println("NO"); } System.out.println(); } }
杭电ACM的N!问题编译不通过1046
import java.math.BigInteger; import java.util.Scanner; public class A1042 { private static Scanner sc; public static void main(String []args){ sc = new Scanner(System.in); BigInteger n = sc.nextBigInteger(); while(n.intValue()<=10000){ if(!n.equals(BigInteger.valueOf(1))){ n = n.multiply(n.subtract(BigInteger.valueOf(1))); } System.out.println(n); n = sc.nextBigInteger(); } } } 为什么自己运行结果是正确的却编译不通过,提示Compilation Error
杭电ACM1096,一直有错误,求帮忙
![图片说明](https://img-ask.csdn.net/upload/201510/15/1444870735_573916.png) 我的代码 #include <stdio.h> int main(){ int n, i; int a, b; int x, sum; while(scanf("%d", &n) != EOF){ for (i = 0; i < n; i++){ scanf("%d", &a); for (b = 0; b < a; b++){ sum = 0; scanf("%d", &x); sum = sum + x; printf("%d", sum); printf("\n"); } } } return 0; }
杭电acm1106为什么就是WA求解释,看了大牛的思想,结果输出正确
排序 Problem Description 输入一行数字,如果我们把这行数字中的‘5’都看成空格,那么就得到一行用空格分割的若干非负整数(可能有些整数以‘0’开头,这些头部的‘0’应该被忽略掉,除非这个整数就是由若干个‘0’组成的,这时这个整数就是0)。 你的任务是:对这些分割得到的整数,依从小到大的顺序排序输出。 Input 输入包含多组测试用例,每组输入数据只有一行数字(数字之间没有空格),这行数字的长度不大于1000。 输入数据保证:分割得到的非负整数不会大于100000000;输入数据不可能全由‘5’组成。 Output 对于每个测试用例,输出分割得到的整数排序的结果,相邻的两个整数之间用一个空格分开,每组输出占一行。 Sample Input 0051231232050775 Sample Output 0 77 12312320 **我的代码:** **import java.util.Scanner; import java.util.*; public class Main { public static void main(String[] args) { while(true){ Scanner sc = new Scanner(System.in); String in = sc.next(); Scanner scanner = new Scanner(in); Set<Integer> map = new TreeSet<Integer>(); scanner.useDelimiter("5+"); while(scanner.hasNextInt()){ map.add(scanner.nextInt()); } Object[] a = map.toArray(); for(int i=0;i<a.length;i++){ if(i==a.length-1) System.out.println(a[i]); else System.out.print(a[i]+" "); } } } }** **输出: 50512312320555507750005 0 77 12312320**
杭电acm1003 提示Time Limit Exceeded
#include<stdio.h> #include<string.h> main() { static char arr[20][100000]; int i,j,a,n=0,t,result=0,sum=0; scanf("%d",&t);//准备输入几行t=2 if(t>=1&&t<=20){ while(n<t){ if(scanf("%d",&i) && i>=1 && i<=100000){ // 第t输入出i个数, j =0; arr[n][j++] = i;//第一个位置记录的是 每个一维数组的长度,以免第一个元素出现0, 用strlen 会失效 while(j<=i && scanf("%d",&a)!=EOF){ if(a>=-1000 && a<=1000) arr[n][j++] = a; } } n++; } } for(i=0;i<t;i++){// t 是 输入几行 int len = arr[i][0]; int start,end,k;// 从新的位置开始统计和最大的组合序列 for(j=1;j<=len;j++){// 循环次数 for(k=j;k<len;k++){ result += arr[i][k]; if(result>sum){ sum = result; start = j; end = k; } } result = 0; } printf("Case %d:\n",i+1); printf("%d %d %d",sum,start,end); if(i+1<t){ printf("\n\n"); }else printf("\n"); sum =0; } }
杭电ACM 1042 N的阶乘 大数 问题在我注释的地方
#include<stdio.h> #include<string> int c[10086]; int main() { int i,j,l,n,k,h; while(scanf("%d",&n)!=EOF) { memset(c,0,sizeof(c)); c[0]=1; k=0; if(n==0) printf("1\n"); else { for(j=1;j<=n;j++) { for(i=0;i<=k;i++) { c[i]=c[i]*j; } for(h=0;h<=k;h++) { if(c[h]>9999) { c[h+1]=c[h+1]+c[h]/10000; c[h]=c[h]%10000; if(c[k+1]>0) //*为什么这个if判断不能少 按道理不是一定会有c[k+1]>0吗,没有这一句我的结果前面多了两个0*// k++; } } } for(l=k;l>=0;l--) { if(l==k) printf("%d",c[l]); else { if(c[l]<10&&c[l]>=0) printf("000%d",c[l]); else if(c[l]<100&&c[l]>=10) printf("00%d",c[l]); else if(c[l]<1000&&c[l]>=100) printf("0%d",c[l]); else if(c[l]>=1000) printf("%d",c[l]); } } printf("\n"); } } return 0; }
关于杭电ACM2031 进制转换感觉找不出自己的错误,求指出
#include<stdio.h> int main() { long n,r; char a[10000]; while(scanf("%d%d",&n,&r) == 2) { if(n == 0) printf("0\n"); else { int i = 0; if(n<0){n=-n;printf("-");} while(n > 0) { a[i++] = n%r; n=n/r; } int j = i-1; for(; j >= 0; j--) { if(a[j] > 10) printf("%c",a[j]-10+'A'); else printf("%d",a[j]); } putchar('\n'); } } return 0; }
杭电 acm 2039 ( 三角形 )判断这样用问什么会通不过呢?哪位大神讲讲正确的用法
三角形 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 28002 Accepted Submission(s): 9138 Problem Description 给定三条边,请你判断一下能不能组成一个三角形。 Input 输入数据第一行包含一个数M,接下有M行,每行一个实例,包含三个正数A,B,C。其中A,B,C <1000; Output 对于每个测试实例,如果三条边长A,B,C能组成三角形的话,输出YES,否则NO。 Sample Input 2 1 2 3 2 2 2 Sample Output NO YES ``` #include<stdio.h> #define bast(a,b,c) (a+b>c) ? 1:0 int main(){ int m,x,y,z; scanf("%d",&m); while(m--) { scanf("%d%d%d",&x,&y,&z); if(bast(x,y,z)==1&&bast(x,z,y)==1&&bast(y,z,x)==1) printf("YES\n"); else printf("NO\n"); } return 0; } ``` 判断这样用问什么会通不过呢?哪位大神讲讲正确的用法
杭电acm1007,不考虑运行时间问题,我的代码错在哪?
#include<iostream> #include<cmath> #include<iomanip> using namespace std; int main() { int N,i,j,k=0; double min; while (cin >> N&&N) { double *x = new double[N]; double *y = new double[N]; double *d = new double[N*(N-1)]; for (i = 0; i < N; i++) cin >> x[i] >> y[i]; for (i = 0; i < N-1; i++) { for (j = i + 1; j < N; j++) { if (x[i] == x[j] && y[i] == y[j]) d[k] = 0; else d[k] = (x[i] - x[j])*(x[i] - x[j]) + (y[i] - y[j])*(y[i] - y[j]); k++; } } min = d[0]; for (k = 0; k < N*(N - 1) / 2; k++) if (min > d[k]) min = d[k]; if(min!=0) min = sqrt(min)/2; cout << setprecision(2) << fixed << min << endl; delete []x, y, d; } return 0; } 连续输入两次数据: 2 1 1 1 1 为什么第一次是0.00,第二次是-nan(ind)
杭电acm2023,感觉没错啊,为什么提交错误
![图片说明](https://img-ask.csdn.net/upload/201610/14/1476440219_623656.png) import java.util.Scanner; import java.text.DecimalFormat; public class Main { public static void main(String[] agrs) { Scanner in = new Scanner(System.in); int n; int m; while(in.hasNext()){ n = in.nextInt(); m = in.nextInt(); new Arange(n,m); } } } class Arange{ Scanner in = new Scanner(System.in); DecimalFormat ft = new DecimalFormat("0.00"); int a; public Arange(int n, int m){ double sum[] = new double[n]; double sum1[] = new double[m]; int[][] s = new int[n][m]; for(int i=0; i<n; i++){ for(int j=0; j<m; j++) { s[i][j] = in.nextInt(); } } for(int i=0; i<n; i++){ sum[i]=0; for(int j=0; j<m; j++) { sum[i] += s[i][j]; } sum[i]=sum[i]/m; } for(int j=0;j<m;j++){ sum1[j]=0; for(int i=0;i<n;i++){ sum1[j] += s[i][j]; } sum1[j] = sum1[j]/n; } for(int j=0;j<n;j++){ if(j==n-1) { System.out.printf(ft.format(sum[j])); System.out.println(); }else{ System.out.printf(ft.format(sum[j])+" "); } } for(int j=0;j<m;j++){ if(j==m-1) { System.out.printf(ft.format(sum1[j])); System.out.println(); }else{ System.out.printf(ft.format(sum1[j])+" "); } } int count1=0; for(int i=0;i<n;i++){ int count=0; for(int j=0;j<m;j++){ if(s[i][j]>sum1[j]){ count++; } } if(count==m){ count1++; } } System.out.println(count1); System.out.println(); } } 哪位大神知道什么地方错了,为什么总是错误
杭电oj2022的解答,感谢?
http://acm.hdu.edu.cn/showproblem.php?pid=2022 杭电求解2022,带解析的那种,【害羞】
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、PDF搜索网站推荐 对于大部
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
Vue + Spring Boot 项目实战(十四):用户认证方案与完善的访问拦截
本篇文章主要讲解 token、session 等用户认证方案的区别并分析常见误区,以及如何通过前后端的配合实现完善的访问拦截,为下一步权限控制的实现打下基础。
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入  假设现有4个人
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
写在前面: 我是 扬帆向海,这个昵称来源于我的名字以及女朋友的名字。我热爱技术、热爱开源、热爱编程。技术是开源的、知识是共享的。 这博客是对自己学习的一点点总结及记录,如果您对 Java、算法 感兴趣,可以关注我的动态,我们一起学习。 用知识改变命运,让我们的家人过上更好的生活。 目录一、杨辉三角的介绍二、杨辉三角的算法思想三、代码实现1.第一种写法2.第二种写法 一、杨辉三角的介绍 百度
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
SQL-小白最佳入门sql查询一
一 说明 如果是初学者,建议去网上寻找安装Mysql的文章安装,以及使用navicat连接数据库,以后的示例基本是使用mysql数据库管理系统; 二 准备前提 需要建立一张学生表,列分别是id,名称,年龄,学生信息;本示例中文章篇幅原因SQL注释略; 建表语句: CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // dosho
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,
程序员:我终于知道post和get的区别
IT界知名的程序员曾说:对于那些月薪三万以下,自称IT工程师的码农们,其实我们从来没有把他们归为我们IT工程师的队伍。他们虽然总是以IT工程师自居,但只是他们一厢情愿罢了。 此话一出,不知激起了多少(码农)程序员的愤怒,却又无可奈何,于是码农问程序员。 码农:你知道get和post请求到底有什么区别? 程序员:你看这篇就知道了。 码农:你月薪三万了? 程序员:嗯。 码农:你是怎么做到的? 程序员:
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
      11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1
程序员把地府后台管理系统做出来了,还有3.0版本!12月7号最新消息:已在开发中有github地址
第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员…… 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找“人”开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求。 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员
Android 9.0系统新特性,对刘海屏设备进行适配
其实Android 9.0系统已经是去年推出的“老”系统了,这个系统中新增了一个比较重要的特性,就是对刘海屏设备进行了支持。一直以来我也都有打算针对这个新特性好好地写一篇文章,但是为什么直到拖到了Android 10.0系统都发布了才开始写这篇文章呢?当然,一是因为我这段时间确实比较忙,今年几乎绝大部分的业余时间都放到写新书上了。但是最主要的原因并不是这个,而是因为刘海屏设备的适配存在一定的特殊性
网易云6亿用户音乐推荐算法
网易云音乐是音乐爱好者的集聚地,云音乐推荐系统致力于通过 AI 算法的落地,实现用户千人千面的个性化推荐,为用户带来不一样的听歌体验。 本次分享重点介绍 AI 算法在音乐推荐中的应用实践,以及在算法落地过程中遇到的挑战和解决方案。 将从如下两个部分展开: AI 算法在音乐推荐中的应用 音乐场景下的 AI 思考 从 2013 年 4 月正式上线至今,网易云音乐平台持续提供着:乐屏社区、UGC
【技巧总结】位运算装逼指南
位算法的效率有多快我就不说,不信你可以去用 10 亿个数据模拟一下,今天给大家讲一讲位运算的一些经典例子。不过,最重要的不是看懂了这些例子就好,而是要在以后多去运用位运算这些技巧,当然,采用位运算,也是可以装逼的,不信,你往下看。我会从最简单的讲起,一道比一道难度递增,不过居然是讲技巧,那么也不会太难,相信你分分钟看懂。 判断奇偶数 判断一个数是基于还是偶数,相信很多人都做过,一般的做法的代码如下
日均350000亿接入量,腾讯TubeMQ性能超过Kafka
整理 | 夕颜出品 | AI科技大本营(ID:rgznai100) 【导读】近日,腾讯开源动作不断,相继开源了分布式消息中间件TubeMQ,基于最主流的 OpenJDK8开发的
8年经验面试官详解 Java 面试秘诀
    作者 | 胡书敏 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 本人目前在一家知名外企担任架构师,而且最近八年来,在多家外企和互联网公司担任Java技术面试官,前后累计面试了有两三百位候选人。在本文里,就将结合本人的面试经验,针对Java初学者、Java初级开发和Java开发,给出若干准备简历和准备面试的建议。   Java程序员准备和投递简历的实
面试官如何考察你的思维方式?
1.两种思维方式在求职面试中,经常会考察这种问题:北京有多少量特斯拉汽车? 某胡同口的煎饼摊一年能卖出多少个煎饼? 深圳有多少个产品经理? 一辆公交车里能装下多少个乒乓球? 一
相关热词 基于c#波形控件 c# 十进制转十六进制 对文件aes加密vc# c#读取栈中所有的值 c# rsa256加密 好 学c# 还是c++ c# 和java的差距 c# curl网络框架 c# https证书请求 c# 中崎
立即提问