정올 알고리즘 2247 도서관 문제

Programming/JAVA,JSP 2015. 11. 26. 10:47 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
package com.tistory.tansanc;

import java.util.Scanner;

public class Test {

	public static void main(String[] args) {

		int[] timeTable = new int[25];

		timeCheck(timeTable);

		int inputLength;
		int[][] inputData;
		Scanner sc = new Scanner(System.in);

		inputLength = sc.nextInt();
		inputData = new int[inputLength][2];

		for (int inputFor = 0; inputFor < inputLength; inputFor++) {

			inputData[inputFor][0] = sc.nextInt(); // Start Time
			inputData[inputFor][1] = sc.nextInt(); // End Time
		}
		for (int inputFor = 0; inputFor < inputLength; inputFor++) {

			for (int todayCheck = inputData[inputFor][0]; todayCheck < inputData[inputFor][1]; todayCheck++)
				timeTable[todayCheck] = 1;
		}
		

		timeCheck(timeTable);

		int maxBreak = 0;
		int maxTime = 0;
		int maxTempTime = 0;

		for (int inputFor = 0; inputFor < 25; inputFor++) {
			if( timeTable[inputFor] == 1)
			{
				maxTempTime++;
			}
			else
			{
				if ( maxTempTime > maxTime)
				{
					maxTime = maxTempTime;
				}
				maxTempTime = 0;
			}
		}
		if ( maxTempTime > maxTime)
		{
			maxTime = maxTempTime;
		}
		
		System.out.println("maxTime : " + maxTime);
		
	}

	static void timeCheck(int[] timeTable) {
		for (int i = 0; i < timeTable.length; i++)
			System.out.printf("%3d ", i);
		System.out.print("\n");
		for (int i = 0; i < timeTable.length; i++)
			System.out.printf("%3d ", timeTable[i]);
		System.out.print("\n");
		System.out.print("\n");
	}
}

'Programming > JAVA,JSP' 카테고리의 다른 글

Java 채팅 소스 예제 #1  (0) 2016.02.04
Java CardLayout Test  (0) 2016.01.26
Java Server/Client Code  (2) 2015.11.12
[Spring] 한글 인코딩 설정  (0) 2015.10.29
mysql table datetime tip  (0) 2014.10.20
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

public void onClick(View v) {

if (alButtonBool.get(buttonNum) == false) {

alButtonBool.set(buttonNum, true);


if (media_player_red_filePath.get(index) == "") {

media_player_red[index] = MediaPlayer.create(

mContext, raw);

} else {

media_player_red[index] = new MediaPlayer();

try {

media_player_red[index]

.setDataSource(media_player_red_filePath

.get(index));

} catch (Exception e) {

e.printStackTrace();

}

}

media_player_red[index]

.setOnPreparedListener(mPreparedListener);

media_player_red[index].setVolume(media_player_red_Volume,

media_player_red_Volume);

try {

media_player_red[index].prepare();


} catch (IllegalStateException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

} else {

media_player_red[index].release();

media_player_red[index] = null;

alButtonBool.set(buttonNum, false);

}

}

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

public boolean onTouch(View v, MotionEvent event) {

switch (event.getAction()) {

case MotionEvent.ACTION_DOWN:

if (media_player_ye_state.get(index) == false) {

media_player_ye_state.set(index, true);


if (media_player_ye_filePath.get(index) == "") {

media_player_ye[index] = MediaPlayer.create(

mContext, raw);

} else {

media_player_ye[index] = new MediaPlayer();

try {

media_player_ye[index]

.setDataSource(media_player_ye_filePath

.get(index));

} catch (Exception e) {

e.printStackTrace();

}

}

media_player_ye[index]

.setOnPreparedListener(mPreparedListener);

media_player_ye[index].setVolume(

media_player_ye_Volume, media_player_ye_Volume);

media_player_ye[index].setLooping(true); // 반복재생

alButton.get(buttonNum).setPressed(true);

try {

media_player_ye[index].prepare();

} catch (Exception e) {

e.printStackTrace();

}

}

return true;

case MotionEvent.ACTION_UP:

alButton.get(buttonNum).setPressed(false);

media_player_ye_state.set(index, false);

try {

media_player_ye[index].release();

} catch (Exception e) {

media_player_ye[index] = null;

e.printStackTrace();

}

return true;

}

return false;

}

MediaPlayer Source 선택

Programming/Android 2015. 11. 16. 01:05 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

MediaPlayer Source 선택


res/raw 폴더의 music.mp3 파일


MainActivity 에서 사용한다면


mMediaPlayer = MediaPlayer.create(MainActivity.this, r.raw.music);


File Chooser 를 통해 얻은 경로에 있는 파일을 


MainActivity 에서 사용한다면


mMediaPlayer = new MediaPlayer();

try {

mMediaPlayer.setDataSource(mFilePath);

} catch (Exception e) {

e.printStackTrace();

}


Java Server/Client Code

Programming/JAVA,JSP 2015. 11. 12. 13:23 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
Client.java
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;

import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.JTextField;


class MyFrame extends JFrame {
	public static JTextArea textArea;
	JTextField textField;
	PrintWriter out;
	
	public MyFrame() {
		textArea = new JTextArea();
		textField = new JTextField();
		add(BorderLayout.CENTER, textArea);
		add(BorderLayout.SOUTH, textField);
		textField.addActionListener(new FieldListener());
		setSize(300,200);
		setTitle("채팅프로그램 Client");
		setVisible(true);
		// GUI를 설계한다.
	}
	class FieldListener implements ActionListener
	{

		@Override
		public void actionPerformed(ActionEvent e) {
			// TODO Auto-generated method stub
			out.println(textField.getText());
			textField.setText("");
			// 메세지 보내기
		}		
	}
}

class SendThread extends Thread {
	PrintWriter out;
	public SendThread(PrintWriter out)
	{
		this.out = out;
	}
	@Override
	public void run() {
		// TODO Auto-generated method stub
		super.run();
	}
}

class RecvThread extends Thread {
	BufferedReader in;
	public RecvThread(BufferedReader in)
	{
		this.in = in;
	}
	@Override
	public void run() {
		String temp;
		try {
			while ((temp = in.readLine()) != null) {
				
				MyFrame.textArea.setText(
						MyFrame.textArea.getText()
						+ "\n" + temp);
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

class ClientModule {
	MyFrame mFrame;
	SendThread mSendThread;
	RecvThread mRecvThread;
	Socket s;

	// 서버에 패킷을 보내는 Thread
	// 서버로부터 패킷을 받는 Thread
	public ClientModule() // 준비
	{

		try {
			s = new Socket("192.168.10.151", 33333);
			PrintWriter out = new PrintWriter(s.getOutputStream(), true);
			BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
			mFrame = new MyFrame(); // GUI 객체
			mFrame.out = out;
			mSendThread = new SendThread(out);
			mRecvThread = new RecvThread(in);			
		}  catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	void start() // 시작
	{
		mSendThread.start();
		mRecvThread.start();
	}
}

public class Client {
	public static void main(String[] args) {
		ClientModule cm = new ClientModule();
		// 초기화 작업
		cm.start();
		// Thread.start();
	}
}

Server.java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.ArrayList;

class PerClientThread extends Thread {
	Socket s;
	static ArrayList socketArray = new  ArrayList();

	@Override
	public void run() {
		// TODO Auto-generated method stub

		socketArray.add(s);
		
		BufferedReader br;
		try {
			br = new BufferedReader(new InputStreamReader(s.getInputStream()));
			String temp;
			while ((temp = br.readLine()) != null) {
				System.out.print(s.getInetAddress() + " : ");
				System.out.println(temp);
				for( int i = 0 ; i < socketArray.size() ; i++)
				{
					PrintWriter os = 
							new PrintWriter
							(socketArray.get(i).getOutputStream()
									,true);
					os.print(s.getInetAddress() + " : ");
					os.println(temp);
				}
			}

		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		super.run();
	}
}

public class Test {
	public static void main(String[] args) throws Exception {

		System.out.println("Server Side");
		ServerSocket ss = new ServerSocket(33333);
		Socket s;
		while (true) {
			s = ss.accept();
			PerClientThread pct = new PerClientThread();
			pct.s = s;
			pct.start();
		}

	}
}

'Programming > JAVA,JSP' 카테고리의 다른 글

Java CardLayout Test  (0) 2016.01.26
정올 알고리즘 2247 도서관 문제  (0) 2015.11.26
[Spring] 한글 인코딩 설정  (0) 2015.10.29
mysql table datetime tip  (0) 2014.10.20
JSP, MYSQL, ECLIPSE 연동하기  (0) 2014.10.12

[Spring] 한글 인코딩 설정

Programming/JAVA,JSP 2015. 10. 29. 01:08 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

servlet.xml 파일 수정






     
          
             
                
                   
                      text/plain;charset=utf-8
                   
                
             
          
      


'Programming > JAVA,JSP' 카테고리의 다른 글

정올 알고리즘 2247 도서관 문제  (0) 2015.11.26
Java Server/Client Code  (2) 2015.11.12
mysql table datetime tip  (0) 2014.10.20
JSP, MYSQL, ECLIPSE 연동하기  (0) 2014.10.12
Java Chatting Server, Client  (0) 2014.07.12

CPP 2015-01-15 수업내용 정리

Programming/C,CPP,CS 2015. 1. 15. 15:43 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.


   객체 : 의미있는 값을 갖고있고, 다른 값을 바꿀수 있는 함수를 갖고 있고, 실제로 존재하는 것


   클래스 : 어떤 값들의 타입을 분류하여 멤버 변수로 만들어 놓고, 다른 값을 바꿀수 있는 함수를 갖고 있다.

 실제로 존재하지 않는다. 분류


   추상화 : 객체의 특징을 찾아내어, 클래스로 작성하는 일


   캡슐화 : 객체의 멤버 변수, 멤버 함수를 접근지정자를 통하여 접근제어하는 것


   생성자 함수 : 객체가 생성될때 객체의 멤버 변수값을 채워 넣기 위한 함수


   생성자 함수 오버로딩 : 생성자 함수가 다양한 매개변수 형태에 적용되기 위한 기술


   소멸자 함수 : 객체가 소멸 될때 호출되는 함수









student.h




#include <iostream>

using namespace std;

 

class Student

{

private:

   int studentNumber;

   char name[30];

   string parentAddress;

   string studentAddress;

   char major[30];

   char phoneNumber[30];

   double averagePoint; // 전체평점

public:

   Student(); // 오버로딩1-1

   Student(int studentNumber, char* name); // 오버로딩1-2 

   Student(Student& s); // 오버로딩1-3

   ~Student();

 

   void setStudentNumber(int studentNumber);

   int getStudentNumber();

   void setName();

   int getName();

  

   // 학생전체조회

   // 나의정보조회

   // 학적변동

  

};

 





student.cpp




#include "student.h"

Student::Student() // 오버로딩1-1

   studentNumber = 1500000;

   strcpy(name, "");

   parentAddress = "";

   studentAddress = "";

   strcpy(major, ""); // 의미: major = "";

   strcpy(phoneNumber, "");

   averagePoint = 0.0;

}

Student::Student(int studentNumber, char* name) // 오버로딩1-2

:parentAddress(""),studentAddress("")

{

   this->studentNumber = studentNumber;

   strcpy(Student::name, name);

   strcpy(major, ""); // 의미: major = "";

   strcpy(phoneNumber, "");  

   averagePoint = 0.0;

}

Student::Student(Student& s)

{

   studentNumber = s.studentNumber;

   strcpy(name, s.name);

   parentAddress = s.parentAddress;

   studentAddress = s.studentAddress;

   strcpy(major, s.major);

   strcpy(phoneNumber, s.phoneNumber);

   averagePoint = s.averagePoint;

}

 

Student::~Student()

{

 

}

void Student::setStudentNumber(int studentNumber)

{

   this->studentNumber = studentNumber;

}

int Student::getStudentNumber()

{

   return studentNumber;

}




main.cpp





#include "student.h"

 

int main()

{

 

   // 학생정보관리프로그램

   Student s1(12345,"홍길동"); // 학생1

 

   cout << s1.studentNumber << endl;

 

   return 0;

}

 

 

'Programming > C,CPP,CS' 카테고리의 다른 글

Winpcap Test 02  (0) 2016.03.07
Winpcap Test 01  (0) 2016.03.07
C 2015-01-09 실습  (0) 2015.01.09
Run-Time Check Failure #3 - The variable 'a' is being used without being initialized.  (0) 2014.05.14
C 언어 방향키 입력활용  (0) 2014.05.03

C 2015-01-09 실습

Programming/C,CPP,CS 2015. 1. 9. 15:43 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

#include<stdio.h>

#include<stdlib.h>

 

struct bookData

{

   char name[30];

   char state[30];

   int price;

};

int main(void)

{

   struct bookData* mBookData;

   int count = 0;

   int mode;

   int i;

 

   mBookData = (struct bookData*)malloc( sizeof(struct bookData) );

 

   while(1)

   {

       printf("메뉴를선택하세요( 1. 추가, 2. 조회)\n");

       scanf("%d",&mode);

       switch(mode)

       {

       case 1:

          count++;

 

          mBookData = (struct bookData*)realloc( mBookData, sizeof(struct bookData) * count);

 

          fflush(stdin);

          gets(mBookData[count-1].name);

          fflush(stdin);

          gets(mBookData[count-1].state);

          fflush(stdin);

          scanf("%d", &mBookData[count-1].price);

          fflush(stdin);

 

 

          break;

       case 2:

          printf("%20s %10s %10s\n", "제목", "대여상태", "가격");

          for( i = 0 ; i < count ; i++)

          {

             printf("%20s %10s %10d\n", mBookData[i].name, mBookData[i].state, mBookData[i].price);

          }

          break;

       }

   }

 

    return 0;

}

 

 

 

'Programming > C,CPP,CS' 카테고리의 다른 글

Winpcap Test 01  (0) 2016.03.07
CPP 2015-01-15 수업내용 정리  (0) 2015.01.15
Run-Time Check Failure #3 - The variable 'a' is being used without being initialized.  (0) 2014.05.14
C 언어 방향키 입력활용  (0) 2014.05.03
cpp  (0) 2014.05.03

mysql table datetime tip

Programming/JAVA,JSP 2014. 10. 20. 12:54 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.


인스턴스 게시판을 만들던 도중


게시판에 글을 게시한 시간과 게시글을 수정한 시간을 표기하고자 하였다.



auto_increment 옵션을 주면 id가 자동으로 증가되면서 부여되듯이


시간도 insert, update 한 시점이 자동으로 업데이트되는 기능이 있을거라 생각하여 검색했다.



아래의 sql 문을 활용하면 insert, update 시 해당 컬럼이 자동으로 업데이트 된다.



작성일 DATETIME DEFAULT CURRENT_TIMESTAMP,
수정일 DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

'Programming > JAVA,JSP' 카테고리의 다른 글

Java Server/Client Code  (2) 2015.11.12
[Spring] 한글 인코딩 설정  (0) 2015.10.29
JSP, MYSQL, ECLIPSE 연동하기  (0) 2014.10.12
Java Chatting Server, Client  (0) 2014.07.12
JScrollPane , ScrollPane 차이점  (0) 2014.07.12

JSP, MYSQL, ECLIPSE 연동하기

Programming/JAVA,JSP 2014. 10. 12. 22:53 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

http://novon.tistory.com/entry/MySQL-%EC%9D%B4%ED%81%B4%EB%A6%BD%EC%8A%A4%EC%99%80-%EC%97%B0%EB%8F%99-%EC%84%A4%EC%A0%95-%EB%B0%8F-%EC%82%AC%EC%9A%A9%EB%B2%95



'Programming > JAVA,JSP' 카테고리의 다른 글

[Spring] 한글 인코딩 설정  (0) 2015.10.29
mysql table datetime tip  (0) 2014.10.20
Java Chatting Server, Client  (0) 2014.07.12
JScrollPane , ScrollPane 차이점  (0) 2014.07.12
Java ScrollPane 활용  (0) 2014.07.12