杭电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;
}
acm

1个回答

图片说明

你连样例1+2都没通过,这应该是很明显的问题,把样例放入代码中走一遍就能发现了。
PS:你的代码太长了,这题貌似没这么麻烦?

xl2432
利村村长 额。。。同样的代码,我运行的结果都是对的,否则也不会到处问了。现在已经发现问题了,谢谢!
4 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
杭电acm1002为什么老出错
#include<stdio.h> 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?
杭电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 程序跑图贴在下面,大牛们帮看看吧
杭电ACM1020,自己编的码运行正确,提交总WRONG ANSWER,没辙了,(c++代码如下)
#include "iostream" using namespace std; int main() { int N; char str[10001]; char data; char temp; int i = 0,j,k,p,q; cin >> N; while(N--) { getchar(); //吸收回车符 while (data = getchar()) { if (data == '\n') break; str[i] = data; i++; } for (p = 0; p < i; p++) //排序 { for (q = 0; q < i - p - 1; q++) { if (str[q] > str[q + 1]) { temp = str[q]; str[q] = str[q + 1]; str[q + 1] = temp; } } } int* count = new int[i]; //定义计数数组与字符串数组对应 for (int u = 0; u < i; u++) //把初始值全部设置为0 { count[u] = 0; } for (j = 0; j <= i; j++) { for (k = 0; k <= i; k++) { if (str[j] == str[k]) { count[j] ++; } } } for (int g = 0; g < i; g++) //输出 { if (str[g] != str[g + 1]) { if(count[g] == 1) { cout << str[g]; } else cout << count[g] << str[g]; } } i = 0; 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)
杭电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; } ```
杭电1022 wrong answer
``` #include<iostream> #include<string.h> using namespace std; char s[10000]; char stack[10000]; int main(){ int num,len,next; int top=0,b=1; while(cin>>num&&num!=0){ int mid; gets(s); len=strlen(s); mid=len/2-1; for(int i=1;i<=num;i++) stack[top++]=s[i]; next=mid+2; for(int j=next;j<len;j++) if(s[j]!=stack[--top]){ b=0; break; } if(b==1){ cout<<"Yes."<<endl; for(int i=0;i<num;i++) cout<<"in"<<endl; for(int i=0;i<num;i++) cout<<"out"<<endl; } else if(b==0){ cout<<"No."<<endl; } cout<<"FINISH"<<endl; } } ``` 代码附上,是我的理解错了吗?
杭电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; }
杭电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; } ```
杭电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的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
杭电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; }
杭电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)
杭电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; } }
关于杭电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 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; }
求问杭电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 poj1001 编译通过网上能找到的数据都试了一直没问题但一提交就wrong answer
#include <iostream> using namespace std; int main() { char *MMO(char *many,char one,int offset); void MPM(char *m1,char *m2); char *MMM(char *m3,char *m4); char *RN(char *R,int N); char *outformal(char *r); char *outlater(char res[]); void output(char *r,int count,int N,int h); char R[10]; int N,i,j,M; char *r; while(cin>>R>>N) { int count=-1; int h=strlen(R); for(i=j=0;i<h;i++) { if(R[i]!='.') { R[j++]=R[i]; } if(R[i]=='.') count=i; } R[j]='\0'; M=atoi(R); if(N==0) cout<<1<<endl; else if(M==0) cout<<0<<endl; else { r=RN(R,N); output(r,count,N,h); } } return 0; } char *MMO(char *many,char one,int offset) { int n1,n2,ses,i,mLength; char *r; int carry=0; n1=one-48; mLength=strlen(many); r=new char[mLength+1+offset+1]; for(i=0;i<mLength+1+offset;i++) r[i]='0'; r[mLength+1+offset]='\0'; for(i=mLength-1;i>=0;i--) { n2=many[i]-48; ses=n1*n2; ses=ses+carry; r[i+1]=ses%10+48; carry=ses/10; } r[0]=carry+48; return r; } void MPM(char *m1,char *m2) { int n1,n2; int carry=0; int L1=strlen(m1); int L2=strlen(m2); for(int i=1;i<=L1;i++) { n1=m1[L1-i]-48; if(L2-i<0) n2=0; else n2=m2[L2-i]-48; m1[L1-i]=(n1+n2+carry)%10+48; carry=(n1+n2+carry)/10; } if(L1!=L2) m1[L1-L2-1]=carry+48; delete m2; } char *MMM(char *m3,char *m4) { char *e; int i; int L1=strlen(m3); int L2=strlen(m4); e=new char[L1+L2+1]; for(i=0;i<L1+L2;i++) e[i]='0'; e[L1+L2]='\0'; if(L1<L2) { char *tap=m4; m4=m3; m3=tap; int rag=L2; L2=L1; L1=rag; } for(i=0;i<L2;i++) { char *reg=MMO(m3,m4[L2-i-1],i); MPM(e,reg); } return e; } char *RN(char *R,int N) { if(N<2) return R; char *res=MMM(R,R); for(int i=0;i<N-2;i++) { char * res2 = res; res = MMM(res, R); delete res2; } return res; } char *outformal(char *r) { int num,i,j; char res[1000]; i=0; if(r[0]=='0') { while(r[i]=='0') { num=i; i++; } for(j=0;r[num]!='\0';num++) { res[j++]=r[num+1]; } res[j]='\0'; r=res; return r; } else return r; } char *outlater(char res[]) { int num1=0; int n=strlen(res)-1; for(n;res[n]=='0';n--) { res[n]='\0'; } int m=strlen(res)-1; if(res[m]=='.') res[m]='\0'; return res; } void output(char *r,int count,int N,int h) { int n=strlen(r); int i,j; char result[1000]; if(count<0) { char *res=outformal(r); cout<<res<<endl; } else { j=0; if((n-(h-1-count)*N-1)<0) { result[j]='.'; j++; } for(i=0;r[i]!='\0';i++) { result[j]=r[i]; j++; if(i==(n-(h-1-count)*N-1)) { result[j]='.'; j++; } } result[n+1]='\0'; char *answer=outlater(result); char *res=outformal(answer); cout<<res<<endl; } }
杭电 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; } ``` 判断这样用问什么会通不过呢?哪位大神讲讲正确的用法
相见恨晚的超实用网站
搞学习 知乎:www.zhihu.com 简答题:http://www.jiandati.com/ 网易公开课:https://open.163.com/ted/ 网易云课堂:https://study.163.com/ 中国大学MOOC:www.icourse163.org 网易云课堂:study.163.com 哔哩哔哩弹幕网:www.bilibili.com 我要自学网:www.51zxw
花了20分钟,给女朋友们写了一个web版群聊程序
参考博客 [1]https://www.byteslounge.com/tutorials/java-ee-html5-websocket-example
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
字节跳动视频编解码面经
引言 本文主要是记录一下面试字节跳动的经历。 三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时
开源一个功能完整的SpringBoot项目框架
福利来了,给大家带来一个福利。 最近想了解一下有关Spring Boot的开源项目,看了很多开源的框架,大多是一些demo或者是一个未成形的项目,基本功能都不完整,尤其是用户权限和菜单方面几乎没有完整的。 想到我之前做的框架,里面通用模块有:用户模块,权限模块,菜单模块,功能模块也齐全了,每一个功能都是完整的。 打算把这个框架分享出来,供大家使用和学习。 为什么用框架? 框架可以学习整体
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
Python——画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)
最近翻到一篇知乎,上面有不少用Python(大多是turtle库)绘制的树图,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成喔~) one 樱花树 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch
深深的码丨Java HashMap 透析
HashMap 相关概念 HashTab、HashMap、TreeMap 均以键值对像是存储或操作数据元素。HashTab继承自Dictionary,HashMap、TreeMap继承自AbstractMap,三者均实现Map接口 **HashTab:**同步哈希表,不支持null键或值,因为同步导致性能影响,很少被使用 **HashMap:**应用较多的非同步哈希表,支持null键或值,是键值对...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
Python 基础(一):入门必备知识
目录1 标识符2 关键字3 引号4 编码5 输入输出6 缩进7 多行8 注释9 数据类型10 运算符10.1 常用运算符10.2 运算符优先级 1 标识符 标识符是编程时使用的名字,用于给变量、函数、语句块等命名,Python 中标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。 以下划线开头的标识符有特殊含义,单下划线开头的标识符,如:_xxx ,表示不能直接访问的类属性,需通过类提供
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 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)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
JDK12 Collectors.teeing 你真的需要了解一下
前言 在 Java 12 里面有个非常好用但在官方 JEP 没有公布的功能,因为它只是 Collector 中的一个小改动,它的作用是 merge 两个 collector 的结果,这句话显得很抽象,老规矩,我们先来看个图(这真是一个不和谐的图????): 管道改造经常会用这个小东西,通常我们叫它「三通」,它的主要作用就是将 downstream1 和 downstre...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
程序员把地府后台管理系统做出来了,还有3.0版本!12月7号最新消息:已在开发中有github地址
第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员…… 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找“人”开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求。 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员...
相关热词 c#选择结构应用基本算法 c# 收到udp包后回包 c#oracle 头文件 c# 序列化对象 自定义 c# tcp 心跳 c# ice连接服务端 c# md5 解密 c# 文字导航控件 c#注册dll文件 c#安装.net
立即提问